The man page for SSL_get_error() lists the SSL_* functions it can be used with, and it doesn't mention SSL_shutdown().
On the other hand, the man page for SSL_shutdown() says that for non-blocking I/O, you should call SSL_get_error(). So which is right? I ask, because in the following code: ret = SSL_shutdown(ssl); ssl_err = SSL_get_error(ssl, ret); I'm getting ret = 0, ssl_err = 5 (SSL_ERROR_SYSCALL). This is using a bio_pair, where my own code handles the underlying reads and writes (all single threaded), so SSL_shutdown() shouldn't be doing any system calls (and indeed strace shows that it isn't). So I'm confused. -- The crew of the Enterprise encounter an alien life form which is surprisingly neither humanoid nor made from pure energy. -- Things That Never Happen in "Star Trek" #22 ______________________________________________________________________ OpenSSL Project http://www.openssl.org User Support Mailing List openssl-users@openssl.org Automated List Manager majord...@openssl.org