]> git.pond.sub.org Git - empserver/blobdiff - src/lib/w32/w32sockets.c
Use src/lib/w32/w32sockets.c for client
[empserver] / src / lib / w32 / w32sockets.c
index 318949d4bae01d737cd23c56267acea58488f8b7..6e90468f964f8d0d7b4d76f7ec2312dde552270b 100644 (file)
@@ -147,6 +147,25 @@ w32_bind(int fd, const struct sockaddr *name, socklen_t namelen)
     SOCKET_FUNCTION(bind(sock, name, namelen));
 }
 
+/*
+ * POSIX compatible connect() replacement
+ */
+#undef connect
+int
+w32_connect(int sockfd, const struct sockaddr *addr, int addrlen)
+{
+    SOCKET sock = W32_FD_TO_SOCKET(sockfd);
+    int result;
+
+    result = connect(sock, addr, addrlen);
+    if (result == SOCKET_ERROR) {
+       /* FIXME map WSAEWOULDBLOCK to EINPROGRESS */
+       w32_set_winsock_errno();
+       return -1;
+    }
+    return result;
+}
+
 /*
  * POSIX equivalent for listen().
  */