diff --git a/lib/cpp/src/transport/TServerSocket.cpp b/lib/cpp/src/transport/TServerSocket.cpp
index c4a7f7c..ec7a382 100644
--- a/lib/cpp/src/transport/TServerSocket.cpp
+++ b/lib/cpp/src/transport/TServerSocket.cpp
@@ -310,14 +310,18 @@
     len = sizeof(address);
 
     do {
-      if (0 == bind(serverSocket_, (struct sockaddr *) &address, len)) {
+      if (0 == ::bind(serverSocket_, (struct sockaddr *) &address, len)) {
         break;
       }
       // use short circuit evaluation here to only sleep if we need to
     } while ((retries++ < retryLimit_) && (sleep(retryDelay_) == 0));
+#else
+    GlobalOutput.perror("TSocket::open() Unix Domain socket path not supported on windows", -99);
+    throw TTransportException(TTransportException::NOT_OPEN, " Unix Domain socket path not supported");
+#endif
   } else {
     do {
-      if (0 == bind(serverSocket_, res->ai_addr, res->ai_addrlen)) {
+      if (0 == ::bind(serverSocket_, res->ai_addr, res->ai_addrlen)) {
         break;
       }
       // use short circuit evaluation here to only sleep if we need to
@@ -325,12 +329,6 @@
 
     // free addrinfo
     freeaddrinfo(res0);
-
-#else
-      GlobalOutput.perror("TSocket::open() Unix Domain socket path not supported on windows", -99);
-      throw TTransportException(TTransportException::NOT_OPEN, " Unix Domain socket path not supported");
-#endif
-
   }
 
   // throw an error if we failed to bind properly
diff --git a/lib/cpp/src/windows/config.h b/lib/cpp/src/windows/config.h
index 272a070..3af158a 100644
--- a/lib/cpp/src/windows/config.h
+++ b/lib/cpp/src/windows/config.h
@@ -72,6 +72,11 @@
 
 // Missing functions.
 #define usleep(ms) Sleep(ms)
+inline int sleep(DWORD ms)
+{
+    Sleep(ms);
+    return 0;
+}
 
 #if WINVER <= 0x0502
 #define poll(fds, nfds, timeout) \
