diff --git a/lib/setup.h b/lib/setup.h index 11e137fc2dd30042203b0f320647766b757ccd48..fe1613c112304f1e2cdbcb0608f6ada8187b0ae5 100644 --- a/lib/setup.h +++ b/lib/setup.h @@ -166,6 +166,17 @@ defined(HAVE_LIBSSL) && defined(HAVE_LIBCRYPTO) #define WIN32_LEAN_AND_MEAN /* Prevent including <winsock*.h> in <windows.h> */ #endif +#if (defined(ENABLE_IPV6) || defined(CURLDEBUG)) && defined(_MSC_VER) && \ + (!defined(_WIN32_WINNT) || _WIN32_WINNT < 0x0500) +/* + * Needed to pull in the real getaddrinfo() and not the inline version + * in <wspiAPI.H> which doesn't support IPv6 (IPv4 only). <wspiAPI.H> is + * included from <ws2tcpip.h> for <= 0x0500 SDKs. + */ +#undef _WIN32_WINNT +#define _WIN32_WINNT 0x0501 +#endif + #include <winsock2.h> /* required by telnet.c */ #if defined(ENABLE_IPV6) || defined(USE_SSLEAY)