Automatically generated by Pod::Man 4.09 (Pod::Simple 3.35) Standard preamble: ========================================================================
NAMEBIO_should_read, BIO_should_write, BIO_should_io_special, BIO_retry_type, BIO_should_retry, BIO_get_retry_BIO, BIO_get_retry_reason, BIO_set_retry_reason - BIO retry functions
#include <openssl/bio.h> int BIO_should_read(BIO *b); int BIO_should_write(BIO *b); int BIO_should_io_special(iBIO *b); int BIO_retry_type(BIO *b); int BIO_should_retry(BIO *b); BIO *BIO_get_retry_BIO(BIO *bio, int *reason); int BIO_get_retry_reason(BIO *bio); void BIO_set_retry_reason(BIO *bio, int reason);
DESCRIPTIONThese functions determine why a
BIO_should_retry() is true if the call that produced this condition should then be retried at a later time.
If BIO_should_retry() is false then the cause is an error condition.
BIO_should_read() is true if the cause of the condition is that a
BIO_should_write() is true if the cause of the condition is that a
BIO_should_io_special() is true if some ``special'' condition, that is a reason other than reading or writing is the cause of the condition.
BIO_retry_type() returns a mask of the cause of a retry condition consisting of the values
BIO_get_retry_BIO() determines the precise reason for the special condition, it returns the
BIO_get_retry_reason() returns the reason for a special condition if passed the relevant
BIO_set_retry_reason() sets the retry reason for a special condition for a given
NOTESBIO_should_read(), BIO_should_write(), BIO_should_io_special(), BIO_retry_type(), and BIO_should_retry(), are implemented as macros.
If BIO_should_retry() returns false then the precise ``error condition'' depends on the
If the underlying I/O structure is in a blocking mode almost all current
While an application may retry a failed non blocking call immediately this is likely to be very inefficient because the call will fail repeatedly until data can be processed or is available. An application will normally wait until the necessary condition is satisfied. How this is done depends on the underlying I/O structure.
For example if the cause is ultimately a socket and BIO_should_read() is true then a call to select() may be made to wait until data is available and then retry the
It is possible for a
HISTORYThe BIO_get_retry_reason() and BIO_set_retry_reason() functions were added in OpenSSL 1.1.0.
COPYRIGHTCopyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved.
Licensed under the OpenSSL license (the ``License''). You may not use this file except in compliance with the License. You can obtain a copy in the file