Microsoft KB Archive/317936

= GetHostbyaddr Function Is Not Thread Safe Without DNS and/or WINS =

Article ID: 317936

Article Last Modified on 10/27/2006

-

APPLIES TO


 * Microsoft Windows XP Home Edition
 * Microsoft Windows XP Professional

-



This article was previously published under Q317936



SYMPTOMS
Even though an invalid address exists, a gethostbyaddr call may return successfully with a pointer to the hostent structure from another thread. In a private subnet without any DNS or WINS settings and when the NetBIOS over TCP/IP option is turned on, when you call gethostbyaddr in multiple threads to resolve addresses in the subnet, the program should return error 11004 (WSANO_DATA) if the address is invalid.



RESOLUTION
To resolve this problem, obtain the latest service pack for Windows XP. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:

322389 How to Obtain the Latest Windows XP Service Pack

The English version of this fix should have the following file attributes or later:

  Date       Time   Version      Size     File name -  04-Apr-02  11:57  5.1.2600.41  149,120  Netbt.sys



WORKAROUND
To work around this problem, use a critical section to synchronize the call to gethostbyaddr among threads.



STATUS
Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article. This problem was first corrected in Windows XP Service Pack 1.

Additional query words: kbNetwork

Keywords: kbhotfixserver kbqfe kbbug kbdns kbenv kbfix kbnetwork kbwin2000presp3fix kbwinsock kbwinxpsp1fix KB317936

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.