]> granicus.if.org Git - curl/commitdiff
Check for USE_WINSOCK instead of WIN32 where the check was done
authorYang Tse <yangsita@gmail.com>
Wed, 18 Oct 2006 21:05:40 +0000 (21:05 +0000)
committerYang Tse <yangsita@gmail.com>
Wed, 18 Oct 2006 21:05:40 +0000 (21:05 +0000)
to verify winsock API availability.

16 files changed:
ares/adig.c
ares/ahost.c
ares/ares_process.c
ares/setup.h
lib/connect.c
lib/easy.c
lib/inet_ntop.c
lib/inet_pton.c
lib/select.c
lib/sendf.c
lib/strerror.c
lib/telnet.c
tests/libtest/first.c
tests/server/sockfilt.c
tests/server/util.c
tests/server/util.h

index fb3a43222710ce1619a8bc83f0ce031c19c7bc07..a0f622abda9d380a32ea8dd292fba8a38394a52a 100644 (file)
@@ -153,8 +153,8 @@ int main(int argc, char **argv)
   fd_set read_fds, write_fds;
   struct timeval *tvp, tv;
 
-#ifdef WIN32
-  WORD wVersionRequested = MAKEWORD(1,1);
+#ifdef USE_WINSOCK
+  WORD wVersionRequested = MAKEWORD(USE_WINSOCK,USE_WINSOCK);
   WSADATA wsaData;
   WSAStartup(wVersionRequested, &wsaData);
 #endif
index 40cd08439e4b795394b36c64e8a55d03f3b4f921..92eacd76a438eecaec6c5cf71df52c1e088ead2a 100644 (file)
@@ -64,8 +64,8 @@ int main(int argc, char **argv)
   struct in_addr addr4;
   struct in6_addr addr6;
 
-#ifdef WIN32
-  WORD wVersionRequested = MAKEWORD(1,1);
+#ifdef USE_WINSOCK
+  WORD wVersionRequested = MAKEWORD(USE_WINSOCK,USE_WINSOCK);
   WSADATA wsaData;
   WSAStartup(wVersionRequested, &wsaData);
 #endif
index fb98e70b99735573f15d13ac5a04734f426b5302..f34ae9e5ce2718555e4f9c6bb0560f7c126eb432 100644 (file)
@@ -59,7 +59,7 @@
 #define TRUE 1
 #endif
 
-#if (defined(WIN32) || defined(WATT32)) && !defined(MSDOS)
+#ifdef USE_WINSOCK
 #define GET_ERRNO()  WSAGetLastError()
 #else
 #define GET_ERRNO()  errno
index 3b97e273eba5e1fc99e8e88ed19838c131f9a333..a5899d883c33451e74b925b6ba1a13a6f400659b 100644 (file)
  * Typedef our socket type
  */
 
-#if defined(WIN32) && !defined(WATT32)
+#ifdef USE_WINSOCK
 typedef SOCKET ares_socket_t;
 #define ARES_SOCKET_BAD INVALID_SOCKET
 #else
index 17dddaf8733ec1ff7ec4cd337a822823b78b8f4d..1ffb98b37b78465996ebcfc3b2b27bcc88dc2d11 100644 (file)
@@ -84,7 +84,7 @@
 #define FALSE 0
 #endif
 
-#ifdef WIN32
+#ifdef USE_WINSOCK
 #define EINPROGRESS WSAEINPROGRESS
 #define EWOULDBLOCK WSAEWOULDBLOCK
 #define EISCONN     WSAEISCONN
@@ -121,7 +121,7 @@ singleipconnect(struct connectdata *conn,
  */
 int Curl_sockerrno(void)
 {
-#ifdef WIN32
+#ifdef USE_WINSOCK
   return (int)WSAGetLastError();
 #else
   return errno;
index a400f84f116e5eab7c9c61e0257152365c8be334..b2e026326ab82b717d7387ef5a633c5ae870eb12 100644 (file)
 /* The last #include file should be: */
 #include "memdebug.h"
 
-#if defined(WIN32) && !defined(__GNUC__) || defined(__MINGW32__)
+#ifdef USE_WINSOCK
 /* win32_cleanup() is for win32 socket cleanup functionality, the opposite
    of win32_init() */
 static void win32_cleanup(void)
@@ -122,12 +122,12 @@ static CURLcode win32_init(void)
   WSADATA wsaData;
   int err;
 
-#ifdef ENABLE_IPV6
-  wVersionRequested = MAKEWORD(2, 0);
-#else
-  wVersionRequested = MAKEWORD(1, 1);
+#if defined(ENABLE_IPV6) && (USE_WINSOCK < 2)
+  Error IPV6_requires_winsock2
 #endif
 
+  wVersionRequested = MAKEWORD(USE_WINSOCK, USE_WINSOCK);
+
   err = WSAStartup(wVersionRequested, &wsaData);
 
   if (err != 0)
index 3bbd9eb1421991a2146bcb1f27369305eb944b7e..9381963f5069526e8396cbd8f3bf16224c8c46a4 100644 (file)
@@ -55,7 +55,7 @@
 #define INADDRSZ         4
 #define INT16SZ          2
 
-#ifdef WIN32
+#ifdef USE_WINSOCK
 #define EAFNOSUPPORT    WSAEAFNOSUPPORT
 #define SET_ERRNO(e)    WSASetLastError(errno = (e))
 #else
index c290330cb0032d832e92cefd8d8ac9c0390c8005..9b9f88b5ef8789df99e9cfd2eb842df1ad5ca5a9 100644 (file)
@@ -44,7 +44,7 @@
 #define INADDRSZ         4
 #define INT16SZ          2
 
-#ifdef WIN32
+#ifdef USE_WINSOCK
 #define EAFNOSUPPORT    WSAEAFNOSUPPORT
 #endif
 
index 7c2f2624f1d6119af95caff6ab1a770934a1c018..b25067b6cc0828d7c7ec9b43f25ef40cf6f43769 100644 (file)
@@ -50,7 +50,7 @@
 #include "connect.h"
 #include "select.h"
 
-#if defined(WIN32) || defined(TPF)
+#if defined(USE_WINSOCK) || defined(TPF)
 #define VERIFY_SOCK(x)  /* sockets are not in range [0..FD_SETSIZE] */
 #else
 #define VALID_SOCK(s) (((s) >= 0) && ((s) < FD_SETSIZE))
@@ -224,7 +224,7 @@ int Curl_poll(struct pollfd ufds[], unsigned int nfds, int timeout_ms)
   for (i = 0; i < nfds; i++) {
     if (ufds[i].fd == CURL_SOCKET_BAD)
       continue;
-#ifndef WIN32  /* This is harmless and wrong on Win32 */
+#ifndef USE_WINSOCK  /* winsock sockets are not in range [0..FD_SETSIZE] */
     if (ufds[i].fd >= FD_SETSIZE) {
       errno = EINVAL;
       return -1;
index c964849d9398fefa29bedde498e4ff6f69a2c442..e289e2046ff60849a27d34082938835995141106 100644 (file)
@@ -500,7 +500,7 @@ int Curl_read(struct connectdata *conn, /* connection data */
 
     if(-1 == nread && bytestocopy == 0) {
       int err = Curl_sockerrno();
-#ifdef WIN32
+#ifdef USE_WINSOCK
       if(WSAEWOULDBLOCK == err)
 #else
       if((EWOULDBLOCK == err) || (EAGAIN == err) || (EINTR == err))
index 5a1a83dd1b6c5e5caba09e25fd7e13945c7e6359..62ccfe9a0645d9c02718035f1f5acfa1912223d5 100644 (file)
@@ -382,7 +382,7 @@ curl_share_strerror(CURLSHcode error)
 #endif
 }
 
-#ifdef WIN32
+#ifdef USE_WINSOCK
 
 /* This function handles most / all (?) Winsock errors cURL is able to produce.
  */
@@ -570,7 +570,7 @@ get_winsock_error (int err, char *buf, size_t len)
   buf [len-1] = '\0';
   return buf;
 }
-#endif   /* WIN32 */
+#endif   /* USE_WINSOCK */
 
 /*
  * Our thread-safe and smart strerror() replacement.
@@ -595,7 +595,7 @@ const char *Curl_strerror(struct connectdata *conn, int err)
   max = sizeof(conn->syserr_buf)-1;
   *buf = '\0';
 
-#ifdef WIN32
+#ifdef USE_WINSOCK
 
 #ifdef _WIN32_WCE
   buf[0]=0;
@@ -619,7 +619,7 @@ const char *Curl_strerror(struct connectdata *conn, int err)
       snprintf(buf, max, "Unknown error %d (%#x)", err, err);
   }
 #endif
-#else /* not native Windows coming up */
+#else /* not USE_WINSOCK coming up */
 
   /* These should be atomic and hopefully thread-safe */
 #ifdef HAVE_STRERROR_R
@@ -647,7 +647,7 @@ const char *Curl_strerror(struct connectdata *conn, int err)
 #else /* HAVE_STRERROR_R */
   strncpy(buf, strerror(err), max);
 #endif /* end of HAVE_STRERROR_R */
-#endif /* end of ! Windows */
+#endif /* end of ! USE_WINSOCK */
 
   buf[max] = '\0'; /* make sure the string is zero terminated */
 
index 34cb8db20d62fd9fd32be767027513396287c474..3d396107833e366da831eb0bb3b2211ea51d44ed 100644 (file)
 #define  CURL_SB_EOF(x) (x->subpointer >= x->subend)
 #define  CURL_SB_LEN(x) (x->subend - x->subpointer)
 
-#ifdef WIN32
+#ifdef USE_WINSOCK
 typedef FARPROC WSOCK2_FUNC;
 static CURLcode check_wsock2 ( struct SessionHandle *data );
 #endif
@@ -171,7 +171,7 @@ struct TELNET {
   TelnetReceive telrcv_state;
 };
 
-#ifdef WIN32
+#ifdef USE_WINSOCK
 static CURLcode
 check_wsock2 ( struct SessionHandle *data )
 {
@@ -210,6 +210,7 @@ check_wsock2 ( struct SessionHandle *data )
   return CURLE_OK;
 }
 #endif
+
 static
 CURLcode init_telnet(struct connectdata *conn)
 {
@@ -1090,7 +1091,7 @@ CURLcode Curl_telnet(struct connectdata *conn, bool *done)
   CURLcode code;
   struct SessionHandle *data = conn->data;
   curl_socket_t sockfd = conn->sock[FIRSTSOCKET];
-#ifdef WIN32
+#ifdef USE_WINSOCK
   HMODULE wsock2;
   WSOCK2_FUNC close_event_func;
   WSOCK2_FUNC create_event_func;
@@ -1125,7 +1126,7 @@ CURLcode Curl_telnet(struct connectdata *conn, bool *done)
   if(code)
     return code;
 
-#ifdef WIN32
+#ifdef USE_WINSOCK
   /*
   ** This functionality only works with WinSock >= 2.0.  So,
   ** make sure have it.
index fda1a7fb590b21bc5519b4a6d0c415b744a02eed..782daca17ad91ef1f90456d5440e53b947e12310 100644 (file)
@@ -12,7 +12,7 @@ int test(char *url);
 int select_test (int num_fds, fd_set *rd, fd_set *wr, fd_set *exc,
                  struct timeval *tv)
 {
-#ifdef WIN32
+#ifdef USE_WINSOCK
   /* Winsock doesn't like no socket set in 'rd', 'wr' or 'exc'. This is
    * case when 'num_fds <= 0. So sleep.
    */
index bf60a2c64d3a0d3d2c0154d3f993437dadbfe628..66c5e4b8958c99cc25f27fc06975096adfaf3fc6 100644 (file)
@@ -238,7 +238,7 @@ static int juggle(curl_socket_t *sockfdp,
 
   do {
     rc = select(maxfd + 1, &fds_read, &fds_write, &fds_err, &timeout);
-  } while((rc == -1) && (ourerrno() == EINTR));
+  } while((rc == -1) && (our_sockerrno() == EINTR));
 
   switch(rc) {
   case -1:
index 7bf8bdc82d72c2ea8ee6bcc542dd0b6e68957aa7..ddc4bc94966537bb22e1471d3dd1e4d47524dd78 100644 (file)
@@ -60,13 +60,13 @@ const struct in6_addr in6addr_any = {{ IN6ADDR_ANY_INIT }};
 #endif
 
 /*
- * ourerrno() returns the errno (or equivalent) on this platform to
- * hide platform specific for the function that calls this.
+ * our_sockerrno() returns the *socket-related* errno (or equivalent) on this
+ * platform to hide platform specific for the function that calls this.
  */
-int ourerrno(void)
+int our_sockerrno(void)
 {
-#ifdef WIN32
-  return (int)GetLastError();
+#ifdef USE_WINSOCK
+  return (int)WSAGetLastError();
 #else
   return errno;
 #endif
@@ -115,13 +115,15 @@ void win32_perror (const char *msg)
      fprintf(stderr, "%s: ", msg);
   fprintf(stderr, "%s\n", buf);
 }
+#endif  /* WIN32 */
 
+#ifdef USE_WINSOCK
 void win32_init(void)
 {
   WORD wVersionRequested;
   WSADATA wsaData;
   int err;
-  wVersionRequested = MAKEWORD(2, 0);
+  wVersionRequested = MAKEWORD(USE_WINSOCK, USE_WINSOCK);
 
   err = WSAStartup(wVersionRequested, &wsaData);
 
@@ -131,8 +133,8 @@ void win32_init(void)
     exit(1);
   }
 
-  if ( LOBYTE( wsaData.wVersion ) != 2 ||
-       HIBYTE( wsaData.wVersion ) != 0 ) {
+  if ( LOBYTE( wsaData.wVersion ) != USE_WINSOCK ||
+       HIBYTE( wsaData.wVersion ) != USE_WINSOCK ) {
 
     WSACleanup();
     perror("Winsock init failed");
@@ -145,7 +147,7 @@ void win32_cleanup(void)
 {
   WSACleanup();
 }
-#endif  /* WIN32 */
+#endif  /* USE_WINSOCK */
 
 /* set by the main code to point to where the test dir is */
 const char *path=".";
index acda121592ab0ad35c99ab284d299a06abed1ccf..17d82f156b416d148359c5ba213757c4263475d7 100644 (file)
@@ -23,7 +23,7 @@
  * $Id$
  ***************************************************************************/
 
-int ourerrno(void);
+int our_sockerrno(void);
 void logmsg(const char *msg, ...);
 
 #ifndef FALSE
@@ -44,19 +44,21 @@ extern const char *path;
 
 #define sleep(sec)   Sleep ((sec)*1000)
 
+#undef perror
+#define perror(m) win32_perror(m)
+void win32_perror (const char *msg);
+#endif  /* WIN32 */
+
+#ifdef USE_WINSOCK
 #define EINPROGRESS  WSAEINPROGRESS
 #define EWOULDBLOCK  WSAEWOULDBLOCK
 #define EISCONN      WSAEISCONN
 #define ENOTSOCK     WSAENOTSOCK
 #define ECONNREFUSED WSAECONNREFUSED
 
-#undef perror
-#define perror(m) win32_perror(m)
-void win32_perror (const char *msg);
-
 void win32_init(void);
 void win32_cleanup(void);
-#endif  /* WIN32 */
+#endif  /* USE_WINSOCK */
 
 /* returns the path name to the test case file */
 char *test2file(long testno);