[PATCH] iphlpapi: Also check the IP address family before treating it as an IPv6 one.

Dmitry Timoshkov dmitry at baikal.ru
Tue Feb 20 00:40:21 CST 2018


On my local network there is no IPv6 DNS servers, and sin6_family == AF_INET.

Signed-off-by: Dmitry Timoshkov <dmitry at baikal.ru>
---
 dlls/iphlpapi/iphlpapi_main.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/dlls/iphlpapi/iphlpapi_main.c b/dlls/iphlpapi/iphlpapi_main.c
index 48a83870a5..97284edbe6 100644
--- a/dlls/iphlpapi/iphlpapi_main.c
+++ b/dlls/iphlpapi/iphlpapi_main.c
@@ -1300,7 +1300,7 @@ static int get_dns_servers( SOCKADDR_STORAGE *servers, int num, BOOL ip4_only )
     for (i = 0, addr = servers; addr < (servers + num) && i < _res.nscount; i++)
     {
 #ifdef HAVE_STRUCT___RES_STATE__U__EXT_NSCOUNT6
-        if (_res._u._ext.nsaddrs[i])
+        if (_res._u._ext.nsaddrs[i] && _res._u._ext.nsaddrs[i]->sin6_family == AF_INET6)
         {
             if (ip4_only) continue;
             sockaddr_in6_to_WS_storage( addr, _res._u._ext.nsaddrs[i] );
-- 
2.16.1




More information about the wine-devel mailing list