diff options
author | Dr. David von Oheimb <David.von.Oheimb@siemens.com> | 2020-05-28 15:16:45 +0200 |
---|---|---|
committer | Dr. David von Oheimb <David.von.Oheimb@siemens.com> | 2020-06-16 18:51:39 +0200 |
commit | e98c7350bfaf0ae1f2b72d68d4c5721de24a478f (patch) | |
tree | c98d71a7215e057d2c1fea65f741a4bf58648d28 /crypto/bio/b_sock.c | |
parent | 3f528d0899e8fe850c63d600ee29146bc8a9c125 (diff) |
Improve BIO_socket_wait(), BIO_wait(), BIO_connect_retry(), and their docs
Add/extend range check for 'fd' argument of BIO_socket_wait() and bio_wait()
Correct nap time calculations in bio_wait(), thus correcting also BIO_wait()
Update a type cast from 'unsigned long' to 'unsigned int'
Extend the comments and documentation of BIO_wait()
Rename BIO_connect_retry() to BIO_do_connect_retry()
Make its 'timeout' argument < 0 lead to BIO_do_connect() tried only once
Add optional 'nap_milliseconds' parameter determining the polling granularity
Correct and generalize the retry case checking
Extend the comments and documentation of BIO_do_connect_retry()
Reviewed-by: Bernd Edlinger <bernd.edlinger@hotmail.de>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/11986)
Diffstat (limited to 'crypto/bio/b_sock.c')
-rw-r--r-- | crypto/bio/b_sock.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/crypto/bio/b_sock.c b/crypto/bio/b_sock.c index f5d2a627cb..79f7743b2f 100644 --- a/crypto/bio/b_sock.c +++ b/crypto/bio/b_sock.c @@ -387,6 +387,8 @@ int BIO_socket_wait(int fd, int for_read, time_t max_time) struct timeval tv; time_t now; + if (fd < 0 || fd >= FD_SETSIZE) + return -1; if (max_time == 0) return 1; |