SSL_rstate_string(3) | OpenSSL | SSL_rstate_string(3)

# NAME

SSL_rstate_string, SSL_rstate_string_long - get textual description of state of an SSL object during read operation

# SYNOPSIS

     #include <openssl/ssl.h>
     const char *SSL_rstate_string(SSL *ssl);
     const char *SSL_rstate_string_long(SSL *ssl);

# DESCRIPTION

SSL_rstate_string() returns a 2 letter string indicating the current read state of the SSL object ssl.

SSL_rstate_string_long() returns a string indicating the current read state of the SSL object ssl.

# NOTES

When performing a read operation, the SSL/TLS engine must parse the record, consisting of header and body. When working in a blocking environment, SSL_rstate_string[_long]() should always return "RD"/"read done".

This function should only seldom be needed in applications.

# RETURN VALUES

SSL_rstate_string() and SSL_rstate_string_long() can return the following values:

"RH"/"read header"
  The header of the record is being evaluated.
"RB"/"read body"
  The body of the record is being evaluated.
"unknown"/"unknown"
  The read state is unknown. This should never happen.

When used with QUIC SSL objects, these functions always return "RH"/"read header" in normal conditions.

# SEE ALSO

ssl(7)

# COPYRIGHT

Copyright 2001-2023 The OpenSSL Project Authors. All Rights Reserved.

Licensed under the Apache License 2.0 (the "License"). You may not use this file except in compliance with the License. You can obtain a copy in the file LICENSE in the source distribution or at <https://www.openssl.org/source/license.html>.

2026-06-09 | 3.5.7