NAME
SSLwant, SSLwantnothing, SSLwantread, SSLwantwrite,SSLwantx509lookup - obtain state information TLS/SSL I/O operation
SYNOPSIS
#include
int SSLwant(const SSL *ssl); int SSLwantnothing(const SSL *ssl); int SSLwantread(const SSL *ssl); int SSLwantwrite(const SSL *ssl); int SSLwantx509lookup(const SSL *ssl);DESCRIPTION
SSLwant() returns state information for the SSL object ssssll. The other SSLwant*() calls are shortcuts for the possible states returned by SSLwant(). NNOOTTEESS SSLwant() examines the internal state information of the SSL object. Its return values are similar to that of SSLgeterror(3). Unlike SSLgeterror(3), which also evaluates the error queue, the results are obtained by examining an internal state flag only. The information musttherefore only be used for normal operation under non-blocking I/O.
Error conditions are not handled and must be treated using SSLgeterror(3). The result returned by SSLwant() should always be consistent with the result of SSLgeterror(3).RETURN VALUES
The following return values can currently occur for SSLwant(): SSLNOTHING There is no data to be written or to be read. SSLWRITING There are data in the SSL buffer that must be written to the underlying BBIIOO layer in order to complete the actual SSL*() operation. A call to SSLgeterror(3) should returnSSLERRORWANTWRITE.
SSLREADING More data must be read from the underlying BBIIOO layer in order to complete the actual SSL*() operation. A call to SSLgeterror(3)should return SSLERRORWANTREAD.
SSLX509LOOKUP The operation did not complete because an application callback set by SSLCTXsetclientcertcb() has asked to be called again. Acall to SSLgeterror(3) should return SSLERRORWANTX509LOOKUP.
SSLwantnothing(), SSLwantread(), SSLwantwrite(), SSLwantx509lookup() return 1, when the corresponding condition is true or 0 otherwise.SEE ALSO
ssl(3), err(3), SSLgeterror(3)0.9.7l 2005-03-30 SSLwant(3)