Index: dll/win32/ws2_32/src/addrinfo.c =================================================================== --- dll/win32/ws2_32/src/addrinfo.c (revision 72920) +++ dll/win32/ws2_32/src/addrinfo.c (working copy) @@ -556,6 +556,7 @@ iFlags = ptHints->ai_flags; if ((iFlags & AI_CANONNAME) && !pszNodeName) { + SetLastError(EAI_BADFLAGS); return EAI_BADFLAGS; } @@ -563,6 +564,7 @@ iFamily = ptHints->ai_family; if ((iFamily != PF_UNSPEC) && (iFamily != PF_INET)) { + SetLastError(EAI_FAMILY); return EAI_FAMILY; } @@ -573,6 +575,7 @@ (iSocketType != SOCK_DGRAM) && (iSocketType != SOCK_RAW)) { + SetLastError(EAI_SOCKTYPE); return EAI_SOCKTYPE; } @@ -638,6 +641,7 @@ /* If we got 0, then fail */ if (wPort == 0) { + SetLastError(EAI_SERVICE); return EAI_SERVICE; } @@ -751,6 +755,7 @@ } /* Return to caller */ + SetLastError(iError); return iError; } @@ -908,6 +913,7 @@ else { /* Unsupported family */ + SetLastError(EAI_FAMILY); return EAI_FAMILY; }