xref: /freebsd/crypto/openssl/doc/man3/SSL_state_string.pod (revision e71b70530d95c4f34d8bdbd78d1242df1ba4a945)
1*e71b7053SJung-uk Kim=pod
2*e71b7053SJung-uk Kim
3*e71b7053SJung-uk Kim=head1 NAME
4*e71b7053SJung-uk Kim
5*e71b7053SJung-uk KimSSL_state_string, SSL_state_string_long - get textual description of state of an SSL object
6*e71b7053SJung-uk Kim
7*e71b7053SJung-uk Kim=head1 SYNOPSIS
8*e71b7053SJung-uk Kim
9*e71b7053SJung-uk Kim #include <openssl/ssl.h>
10*e71b7053SJung-uk Kim
11*e71b7053SJung-uk Kim const char *SSL_state_string(const SSL *ssl);
12*e71b7053SJung-uk Kim const char *SSL_state_string_long(const SSL *ssl);
13*e71b7053SJung-uk Kim
14*e71b7053SJung-uk Kim=head1 DESCRIPTION
15*e71b7053SJung-uk Kim
16*e71b7053SJung-uk KimSSL_state_string() returns a 6 letter string indicating the current state
17*e71b7053SJung-uk Kimof the SSL object B<ssl>.
18*e71b7053SJung-uk Kim
19*e71b7053SJung-uk KimSSL_state_string_long() returns a string indicating the current state of
20*e71b7053SJung-uk Kimthe SSL object B<ssl>.
21*e71b7053SJung-uk Kim
22*e71b7053SJung-uk Kim=head1 NOTES
23*e71b7053SJung-uk Kim
24*e71b7053SJung-uk KimDuring its use, an SSL objects passes several states. The state is internally
25*e71b7053SJung-uk Kimmaintained. Querying the state information is not very informative before
26*e71b7053SJung-uk Kimor when a connection has been established. It however can be of significant
27*e71b7053SJung-uk Kiminterest during the handshake.
28*e71b7053SJung-uk Kim
29*e71b7053SJung-uk KimWhen using non-blocking sockets, the function call performing the handshake
30*e71b7053SJung-uk Kimmay return with SSL_ERROR_WANT_READ or SSL_ERROR_WANT_WRITE condition,
31*e71b7053SJung-uk Kimso that SSL_state_string[_long]() may be called.
32*e71b7053SJung-uk Kim
33*e71b7053SJung-uk KimFor both blocking or non-blocking sockets, the details state information
34*e71b7053SJung-uk Kimcan be used within the info_callback function set with the
35*e71b7053SJung-uk KimSSL_set_info_callback() call.
36*e71b7053SJung-uk Kim
37*e71b7053SJung-uk Kim=head1 RETURN VALUES
38*e71b7053SJung-uk Kim
39*e71b7053SJung-uk KimDetailed description of possible states to be included later.
40*e71b7053SJung-uk Kim
41*e71b7053SJung-uk Kim=head1 SEE ALSO
42*e71b7053SJung-uk Kim
43*e71b7053SJung-uk KimL<ssl(7)>, L<SSL_CTX_set_info_callback(3)>
44*e71b7053SJung-uk Kim
45*e71b7053SJung-uk Kim=head1 COPYRIGHT
46*e71b7053SJung-uk Kim
47*e71b7053SJung-uk KimCopyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved.
48*e71b7053SJung-uk Kim
49*e71b7053SJung-uk KimLicensed under the OpenSSL license (the "License").  You may not use
50*e71b7053SJung-uk Kimthis file except in compliance with the License.  You can obtain a copy
51*e71b7053SJung-uk Kimin the file LICENSE in the source distribution or at
52*e71b7053SJung-uk KimL<https://www.openssl.org/source/license.html>.
53*e71b7053SJung-uk Kim
54*e71b7053SJung-uk Kim=cut
55