Article: Q311815
Product(s): Microsoft Windows NT
Version(s): 4.0
Operating System(s):
Keyword(s): kbAPI kbWinsock kbDSupport kbGrpDSNet
Last Modified: 10-DEC-2001
-------------------------------------------------------------------------------
The information in this article applies to:
- Microsoft Windows NT Server version 4.0
- Microsoft Windows NT Workstation version 4.0
-------------------------------------------------------------------------------
SYMPTOMS
========
When you run gethostbyname(), gethostbyaddr(), or gethostname() on a Windows NT
4.0-based computer, the API returns the correct information. However, when you
call WSACleanUp(), an access violation occurs and the program fails.
NOTE: This problem does not occur on Windows 2000.
RESOLUTION
==========
To avoid this problem, do not use host names that contain more than 54
characters.
STATUS
======
Microsoft has confirmed this to be a problem in the Microsoft products that are
listed at the beginning of this article.
MORE INFORMATION
================
Steps to Reproduce Behavior
---------------------------
1. Right-click Network Neighborhood, and then click Properties.
2. Click the Protocol tab, and then select TCP/IP.
3. Click the Properties button.
4. Click the DNS tab. Change the host name to a name that has at least 54
characters.
5. Run the following code:
#include <Winsock2.h>
#include <iostream.h>
int main(int argc,char* argv[])
{
WSADATA wsaData;
char pStr[512]={0};
int ret;
if(WSAStartup(0x0101,&wsaData)) {
cout<<"WSAStartup ";
cout << " error: ?<<WSAGetLastError()<<endl;
return 0;
}
cout<<argv[1]<<endl;
if(gethostname(pStr,512)) {
cout<<"gethostbyname ";
cout << " error: ?<<WSAGetLastError()<<endl;
WSACleanup();
return 0;
}
cout<<"host name: " <<pStr<<endl;
ret=WSACleanup ();
if(ret) {
cout<<"WSACleanup ";
cout << " error: ?<<WSAGetLastError()<<endl;
return 0;
}
return 0;
}
An access violation occurs when the call is made to WSACleanUp().
Additional query words:
======================================================================
Keywords : kbAPI kbWinsock kbDSupport kbGrpDSNet
Technology : kbWinNTsearch kbWinNTWsearch kbWinNTW400 kbWinNTW400search kbWinNT400search kbWinNTSsearch kbWinNTS400sp6 kbWinNTS400search kbWinNTS400 kbWinNTW400SP6a
Version : :4.0
Issue type : kbprb
=============================================================================