X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=doc%2Fssl%2FSSL_read.pod;h=8ca0ce5058da0e5f1299e16d559067e5983737d8;hb=3ffbe008083dcaad282622e8e4be69bb29bc6315;hp=6b47f2fbd1bb95e5834546dc4618bbaacde3f51d;hpb=d93eb21c7c1e39db098a7f1331a75cc95a783c2a;p=oweals%2Fopenssl.git diff --git a/doc/ssl/SSL_read.pod b/doc/ssl/SSL_read.pod index 6b47f2fbd1..8ca0ce5058 100644 --- a/doc/ssl/SSL_read.pod +++ b/doc/ssl/SSL_read.pod @@ -64,6 +64,11 @@ non-blocking socket, nothing is to be done, but select() can be used to check for the required condition. When using a buffering BIO, like a BIO pair, data must be written into or retrieved out of the BIO before being able to continue. +L can be used to find out whether there +are buffered bytes available for immediate retrieval. In this case +SSL_read() can be called without blocking or actually receiving new +data from the underlying socket. + =head1 WARNING When an SSL_read() operation has to be repeated because of @@ -81,13 +86,15 @@ The following return values can occur: The read operation was successful; the return value is the number of bytes actually read from the TLS/SSL connection. -=item 0 +=item Z<>0 -The read operation was not successful, the SSL connection was closed by the -peer by sending a "close notify" alert. The SSL_RECEIVED_SHUTDOWN flag in -the ssl shutdown state is set (see L, -L). -Call SSL_get_error() with the return value B to find out, +The read operation was not successful. The reason may either be a clean +shutdown due to a "close notify" alert sent by the peer (in which case +the SSL_RECEIVED_SHUTDOWN flag in the ssl shutdown state is set +(see L, +L). It is also possible, that +the peer simply shut down the underlying transport and the shutdown is +incomplete. Call SSL_get_error() with the return value B to find out, whether an error occurred or the connection was shut down cleanly (SSL_ERROR_ZERO_RETURN). @@ -110,6 +117,7 @@ L, L, L, L, L, L L, +L, L, L, L, L