aboutsummaryrefslogtreecommitdiffstats
path: root/crypto/bio/b_sock.c
diff options
context:
space:
mode:
authorDr. Stephen Henson <steve@openssl.org>2000-10-12 01:50:33 +0000
committerDr. Stephen Henson <steve@openssl.org>2000-10-12 01:50:33 +0000
commit924046ce75ae5d5ee763f7cff77854bb493814c0 (patch)
tree78f6182654c22fb21c1932bfd58f27aa06041d58 /crypto/bio/b_sock.c
parent9e2c0f41d7deb0d80be53eed75bfe79f24467ec3 (diff)
downloadopenssl-924046ce75ae5d5ee763f7cff77854bb493814c0.tar.gz
Make non blocking I/O work for accept BIOs.
Diffstat (limited to 'crypto/bio/b_sock.c')
-rw-r--r--crypto/bio/b_sock.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/crypto/bio/b_sock.c b/crypto/bio/b_sock.c
index e971a07de0..da2ff2900f 100644
--- a/crypto/bio/b_sock.c
+++ b/crypto/bio/b_sock.c
@@ -661,6 +661,7 @@ int BIO_accept(int sock, char **addr)
ret=accept(sock,(struct sockaddr *)&from,(void *)&len);
if (ret == INVALID_SOCKET)
{
+ if(BIO_sock_should_retry(ret)) return -2;
SYSerr(SYS_F_ACCEPT,get_last_socket_error());
BIOerr(BIO_F_BIO_ACCEPT,BIO_R_ACCEPT_ERROR);
goto end;