Make non blocking I/O work for accept BIOs.
diff --git a/ssl/ssl_lib.c b/ssl/ssl_lib.c index fec98dd..ed2b820 100644 --- a/ssl/ssl_lib.c +++ b/ssl/ssl_lib.c
@@ -1543,6 +1543,8 @@ reason=BIO_get_retry_reason(bio); if (reason == BIO_RR_CONNECT) return(SSL_ERROR_WANT_CONNECT); + else if (reason == BIO_RR_ACCEPT) + return(SSL_ERROR_WANT_ACCEPT); else return(SSL_ERROR_SYSCALL); /* unknown */ } @@ -1561,6 +1563,8 @@ reason=BIO_get_retry_reason(bio); if (reason == BIO_RR_CONNECT) return(SSL_ERROR_WANT_CONNECT); + else if (reason == BIO_RR_ACCEPT) + return(SSL_ERROR_WANT_ACCEPT); else return(SSL_ERROR_SYSCALL); }