aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tests/server/sockfilt.c15
1 files changed, 11 insertions, 4 deletions
diff --git a/tests/server/sockfilt.c b/tests/server/sockfilt.c
index 07c81b11d..5cbf045e7 100644
--- a/tests/server/sockfilt.c
+++ b/tests/server/sockfilt.c
@@ -288,10 +288,17 @@ static int juggle(curl_socket_t *sockfdp,
case PASSIVE_CONNECT:
sockfd = *sockfdp;
- logmsg("waiting for data from client on socket %d", (int)sockfd);
- /* there's always a socket to wait for */
- FD_SET(sockfd, &fds_read);
- maxfd = sockfd;
+ if(-1 == sockfd) {
+ /* eeek, we are supposedly connected and then this cannot be -1 ! */
+ logmsg("socket is -1! on %s:%d", __FILE__, __LINE__);
+ return FALSE;
+ }
+ else {
+ logmsg("waiting for data from client on socket %d", (int)sockfd);
+ /* there's always a socket to wait for */
+ FD_SET(sockfd, &fds_read);
+ maxfd = sockfd;
+ }
break;
case ACTIVE: