]> granicus.if.org Git - python/commitdiff
Patch #520062: Support IPv6 with VC.NET.
authorMartin v. Löwis <martin@v.loewis.de>
Fri, 1 Mar 2002 08:31:07 +0000 (08:31 +0000)
committerMartin v. Löwis <martin@v.loewis.de>
Fri, 1 Mar 2002 08:31:07 +0000 (08:31 +0000)
Modules/socketmodule.c
Modules/socketmodule.h
PC/pyconfig.h

index 2f954a9ce3929790366bcacd585b4c3a65d5b6e3..92b8d4bbc65f42a0514d923987a0a16bdcda82cc 100644 (file)
@@ -409,8 +409,11 @@ PyGAI_Err(int error)
 {
        PyObject *v;
 
+#ifdef EAI_SYSTEM
+       /* EAI_SYSTEM is not available on Windows XP. */
        if (error == EAI_SYSTEM)
                return PySocket_Err();
+#endif
 
 #ifdef HAVE_GAI_STRERROR
        v = Py_BuildValue("(is)", error, gai_strerror(error));
index d1503ba1b45dc034cd0c55f2ad6970c3ce95ac3a..a59e6f750ca6d7696f795cae5fb0453226ce72eb 100644 (file)
@@ -9,8 +9,18 @@
 # endif
 
 #else /* MS_WINDOWS */
+#if _MSC_VER >= 1300
+# include <winsock2.h>
+# include <ws2tcpip.h>
+# define HAVE_ADDRINFO
+# define HAVE_SOCKADDR_STORAGE
+# define HAVE_GETADDRINFO
+# define HAVE_GETNAMEINFO
+# define ENABLE_IPV6
+#else
 # include <winsock.h>
 #endif
+#endif
 
 #ifdef HAVE_SYS_UN_H
 # include <sys/un.h>
index 6402f1d7b0be1973d3094f8990928621c8c4e3de..b412f7780bedee3b7420b4620defa034068de8ee 100644 (file)
@@ -408,7 +408,11 @@ typedef int pid_t;
 /* #undef size_t */
 
 /* Define to `int' if <sys/types.h> doesn't define.  */
+#if _MSC_VER + 0 >= 1300
+/* VC.NET typedefs socklen_t in ws2tcpip.h. */
+#else
 #define socklen_t int
+#endif
 
 /* Define if you have the ANSI C header files.  */
 #define STDC_HEADERS 1