Pārlūkot izejas kodu

slirp: Fix non blocking connect for w32

Signed-off-by: Stefan Weil <sw@weilnetz.de>
Stefan Weil 10 gadi atpakaļ
vecāks
revīzija
a246a01631
1 mainītis faili ar 7 papildinājumiem un 1 dzēšanām
  1. 7 1
      slirp/tcp_input.c

+ 7 - 1
slirp/tcp_input.c

@@ -584,7 +584,13 @@ findso:
 	    goto cont_input;
 	    goto cont_input;
 	  }
 	  }
 
 
-	  if((tcp_fconnect(so) == -1) && (errno != EINPROGRESS) && (errno != EWOULDBLOCK)) {
+          if ((tcp_fconnect(so) == -1) &&
+#if defined(_WIN32)
+              socket_error() != WSAEWOULDBLOCK
+#else
+              (errno != EINPROGRESS) && (errno != EWOULDBLOCK)
+#endif
+          ) {
 	    u_char code=ICMP_UNREACH_NET;
 	    u_char code=ICMP_UNREACH_NET;
 	    DEBUG_MISC((dfd, " tcp fconnect errno = %d-%s\n",
 	    DEBUG_MISC((dfd, " tcp fconnect errno = %d-%s\n",
 			errno,strerror(errno)));
 			errno,strerror(errno)));