rpc->connect_data = private_data;
set_nonblocking(rpc->fd);
-
- if (connect(rpc->fd, (struct sockaddr *)&s, socksize) != 0 && errno != EINPROGRESS) {
+#if defined(WIN32)
+ if (connect(rpc->fd, (struct sockaddr *)&s, socksize) == 0 && GetLastError() != WSAEINPROGRESS )
+#else
+ if (connect(rpc->fd, (struct sockaddr *)&s, socksize) != 0 && errno != EINPROGRESS)
+#endif
+ {
rpc_set_error(rpc, "connect() to server failed");
return -1;
}