]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
getconnectinfo: Don't call recv(2) if socket == -1
authorAnders Bakken <agbakken@gmail.com>
Mon, 16 Nov 2015 20:50:41 +0000 (12:50 -0800)
committerDaniel Stenberg <daniel@haxx.se>
Mon, 16 Nov 2015 21:42:13 +0000 (22:42 +0100)
Closes #528

lib/connect.c

index ece6cf3f658e6ebb854c48efe22b57e70950c0e3..88041dd80610b62091ed1107ce9a530eaa6c25bd 100644 (file)
@@ -1242,10 +1242,10 @@ curl_socket_t Curl_getconnectinfo(struct SessionHandle *data,
     }
 /* Minix 3.1 doesn't support any flags on recv; just assume socket is OK */
 #ifdef MSG_PEEK
-    else {
+    else if(sockfd != CURL_SOCKET_BAD) {
       /* use the socket */
       char buf;
-      if(recv((RECV_TYPE_ARG1)c->sock[FIRSTSOCKET], (RECV_TYPE_ARG2)&buf,
+      if(recv((RECV_TYPE_ARG1)sockfd, (RECV_TYPE_ARG2)&buf,
               (RECV_TYPE_ARG3)1, (RECV_TYPE_ARG4)MSG_PEEK) == 0) {
         return CURL_SOCKET_BAD;   /* FIN received */
       }