diff options
Diffstat (limited to 'tests/server')
| -rw-r--r-- | tests/server/sockfilt.c | 15 | 
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:  | 
