1e71b7053SJung-uk Kim=pod 2e71b7053SJung-uk Kim 3e71b7053SJung-uk Kim=head1 NAME 4e71b7053SJung-uk Kim 5e71b7053SJung-uk KimSSL_rstate_string, SSL_rstate_string_long - get textual description of state of an SSL object during read operation 6e71b7053SJung-uk Kim 7e71b7053SJung-uk Kim=head1 SYNOPSIS 8e71b7053SJung-uk Kim 9e71b7053SJung-uk Kim #include <openssl/ssl.h> 10e71b7053SJung-uk Kim 11e71b7053SJung-uk Kim const char *SSL_rstate_string(SSL *ssl); 12e71b7053SJung-uk Kim const char *SSL_rstate_string_long(SSL *ssl); 13e71b7053SJung-uk Kim 14e71b7053SJung-uk Kim=head1 DESCRIPTION 15e71b7053SJung-uk Kim 16e71b7053SJung-uk KimSSL_rstate_string() returns a 2 letter string indicating the current read state 17e71b7053SJung-uk Kimof the SSL object B<ssl>. 18e71b7053SJung-uk Kim 19e71b7053SJung-uk KimSSL_rstate_string_long() returns a string indicating the current read state of 20e71b7053SJung-uk Kimthe SSL object B<ssl>. 21e71b7053SJung-uk Kim 22e71b7053SJung-uk Kim=head1 NOTES 23e71b7053SJung-uk Kim 24e71b7053SJung-uk KimWhen performing a read operation, the SSL/TLS engine must parse the record, 25e71b7053SJung-uk Kimconsisting of header and body. When working in a blocking environment, 26e71b7053SJung-uk KimSSL_rstate_string[_long]() should always return "RD"/"read done". 27e71b7053SJung-uk Kim 28e71b7053SJung-uk KimThis function should only seldom be needed in applications. 29e71b7053SJung-uk Kim 30e71b7053SJung-uk Kim=head1 RETURN VALUES 31e71b7053SJung-uk Kim 32e71b7053SJung-uk KimSSL_rstate_string() and SSL_rstate_string_long() can return the following 33e71b7053SJung-uk Kimvalues: 34e71b7053SJung-uk Kim 35e71b7053SJung-uk Kim=over 4 36e71b7053SJung-uk Kim 37e71b7053SJung-uk Kim=item "RH"/"read header" 38e71b7053SJung-uk Kim 39e71b7053SJung-uk KimThe header of the record is being evaluated. 40e71b7053SJung-uk Kim 41e71b7053SJung-uk Kim=item "RB"/"read body" 42e71b7053SJung-uk Kim 43e71b7053SJung-uk KimThe body of the record is being evaluated. 44e71b7053SJung-uk Kim 45e71b7053SJung-uk Kim=item "RD"/"read done" 46e71b7053SJung-uk Kim 47e71b7053SJung-uk KimThe record has been completely processed. 48e71b7053SJung-uk Kim 49e71b7053SJung-uk Kim=item "unknown"/"unknown" 50e71b7053SJung-uk Kim 51e71b7053SJung-uk KimThe read state is unknown. This should never happen. 52e71b7053SJung-uk Kim 53e71b7053SJung-uk Kim=back 54e71b7053SJung-uk Kim 55e71b7053SJung-uk Kim=head1 SEE ALSO 56e71b7053SJung-uk Kim 57e71b7053SJung-uk KimL<ssl(7)> 58e71b7053SJung-uk Kim 59e71b7053SJung-uk Kim=head1 COPYRIGHT 60e71b7053SJung-uk Kim 61e71b7053SJung-uk KimCopyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. 62e71b7053SJung-uk Kim 63*b077aed3SPierre ProncheryLicensed under the Apache License 2.0 (the "License"). You may not use 64e71b7053SJung-uk Kimthis file except in compliance with the License. You can obtain a copy 65e71b7053SJung-uk Kimin the file LICENSE in the source distribution or at 66e71b7053SJung-uk KimL<https://www.openssl.org/source/license.html>. 67e71b7053SJung-uk Kim 68e71b7053SJung-uk Kim=cut 69