Knowledge Base

WSAAsyncGetHostByName() Returns IP Address in Reverse Order

Article ID: 156749

Article Last Modified on 11/1/2006


APPLIES TO


This article was previously published under Q156749

SYMPTOMS

Winsock Applications that issue a WSAAsyncGetHostByName() against MS real mode TCP/IP Winsock.dll receive IP address in reverse order

A Winsock application such as Internet Explorer 2.01 or Netscape 2.02 running on Windows 3.1 with MS real mode TCP/IP stack will fail to connect a remote host when the application issues a WSAAsyncGetHostByName() to resolve the remote host name to IP address. For example, WSAAsyncGetHostByName() will return "99.88.77.66" if the remote host IP address is "66.77.88.99".

CAUSE

The Winsock.dll, distributed with real mode TCP/IP for LAN Manager and MS Network Client, improperly formats the IP address.

WORKAROUND

To work around the problem, try to use GetHostByName() instead of the WSAAsyncGetHostByName() call.

A work around for Internet Explorer is to put Use_Async_DNS=no in the [Services] section of Iexplore.ini. This forces the Net_MultiGetHostByName_Async (w32net.c) to call WS_GETHOSTBYNAME instead of WS_WSAASYNCGETHOSTBYNAME.

STATUS

Microsoft has confirmed this to be a problem in Microsoft Network Client
3.0 and Lan Manager 2.2c.

Keywords: kbbug kbnetwork KB156749