Mercurial > cpython-lru_cache-weakref
diff Modules/socketmodule.h @ 47667:b1f4ea4eb555
Merged revisions 64214 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r64214 | amaury.forgeotdarc | 2008-06-13 02:42:22 +0200 (ven., 13 juin 2008) | 6 lines
Restore support for Microsoft VC6 compiler.
Some functions in the msvcrt module are skipped,
and socket.ioctl is enabled only when using a more recent Platform SDK.
(and yes, there are still companies that use a 10-years old compiler)
........
| author | Amaury Forgeot d'Arc <amauryfa@gmail.com> |
|---|---|
| date | Fri, 13 Jun 2008 01:09:34 +0000 |
| parents | 305d7d2ce047 |
| children | 96bff7e137fb |
line wrap: on
line diff
--- a/Modules/socketmodule.h Fri Jun 13 00:26:50 2008 +0000 +++ b/Modules/socketmodule.h Fri Jun 13 01:09:34 2008 +0000 @@ -13,20 +13,23 @@ # endif #else /* MS_WINDOWS */ -#if _MSC_VER >= 1300 # include <winsock2.h> # include <ws2tcpip.h> -# include <MSTcpIP.h> /* for SIO_RCVALL */ -# define HAVE_ADDRINFO -# define HAVE_SOCKADDR_STORAGE -# define HAVE_GETADDRINFO -# define HAVE_GETNAMEINFO -# define ENABLE_IPV6 -#else -# define WIN32_LEAN_AND_MEAN -# include <winsock.h> -#endif -#endif +/* VC6 is shipped with old platform headers, and does not have MSTcpIP.h + * Separate SDKs have all the functions we want, but older ones don't have + * any version information. I use IPPROTO_IPV6 to detect a decent SDK. + */ +# ifdef IPPROTO_IPV6 +# include <MSTcpIP.h> /* for SIO_RCVALL */ +# define HAVE_ADDRINFO +# define HAVE_SOCKADDR_STORAGE +# define HAVE_GETADDRINFO +# define HAVE_GETNAMEINFO +# define ENABLE_IPV6 +# else +typedef int socklen_t; +# endif /* IPPROTO_IPV6 */ +#endif /* MS_WINDOWS */ #ifdef HAVE_SYS_UN_H # include <sys/un.h>
