diff options
author | Nikos Mavrogiannopoulos <nmav@gnutls.org> | 2012-09-02 18:46:47 +0200 |
---|---|---|
committer | Nikos Mavrogiannopoulos <nmav@gnutls.org> | 2012-09-02 18:46:47 +0200 |
commit | 2cdd21e598e1b5adbe23dd4387259ba580ce2657 (patch) | |
tree | 7d34a2350d0f0eefd5df67c0fe1b67f92ef76346 | |
parent | cf897b154ec929335cb377b0556330cc60e72882 (diff) | |
download | gnutls-2cdd21e598e1b5adbe23dd4387259ba580ce2657.tar.gz |
The default system_recv_timeout() doesn't include a call to recv() to avoid issue in few systems.
-rw-r--r-- | lib/gnutls_buffers.c | 3 | ||||
-rw-r--r-- | lib/system.c | 6 |
2 files changed, 2 insertions, 7 deletions
diff --git a/lib/gnutls_buffers.c b/lib/gnutls_buffers.c index ff0f82af36..e03af4858b 100644 --- a/lib/gnutls_buffers.c +++ b/lib/gnutls_buffers.c @@ -661,10 +661,9 @@ _gnutls_io_check_recv (gnutls_session_t session, unsigned int ms) reset_errno (session); ret = session->internals.pull_timeout_func(fd, ms); - - err = get_errno (session); if (ret == -1) { + err = get_errno (session); _gnutls_read_log ("READ_TIMEOUT: %d returned from %p, errno=%d (timeout: %u)\n", (int) ret, fd, err, ms); return errno_to_gerr(err); diff --git a/lib/system.c b/lib/system.c index 14bd0854e0..067f189bf1 100644 --- a/lib/system.c +++ b/lib/system.c @@ -125,7 +125,7 @@ int system_recv_timeout(gnutls_transport_ptr_t ptr, unsigned int ms) { fd_set rfds; struct timeval tv; -int ret, ret2; +int ret; int fd = GNUTLS_POINTER_TO_INT(ptr); FD_ZERO(&rfds); @@ -144,10 +144,6 @@ int fd = GNUTLS_POINTER_TO_INT(ptr); if (ret <= 0) return ret; - ret2 = recv(fd, NULL, 0, MSG_PEEK); - if (ret2 == -1) - return ret2; - return ret; } |