=pod

=head1 NAME

SSL_state_string, SSL_state_string_long - get textual description of state of an SSL object

=head1 SYNOPSIS

 #include <openssl/ssl.h>

 const char *SSL_state_string(SSL *ssl);
 const char *SSL_state_string_long(SSL *ssl);

=head1 DESCRIPTION

SSL_state_string() returns a 6 letter string indicating the current state
of the SSL object B<ssl>.

SSL_state_string_long() returns a string indicating the current state of
the SSL object B<ssl>.

=head1 NOTES

During its use, an SSL objects passes several states. The state is internally
maintained. Querying the state information is not very informative before
or when a connection has been established. It however can be of significant
interest during the handshake.

When using non-blocking sockets, the function call performing the handshake
may return with SSL_ERROR_WANT_READ or SSL_ERROR_WANT_WRITE condition,
so that SSL_state_string[_long]() may be called.

For both blocking or non-blocking sockets, the details state information
can be used within the info_callback function set with the
SSL_set_info_callback() call.

=head1 RETURN VALUES

Detailed description of possible states to be included later.

=head1 SEE ALSO

L<ssl(3)|ssl(3)>, L<SSL_CTX_set_info_callback(3)|SSL_CTX_set_info_callback(3)>

=cut
