Microsoft KB Archive/168349

{|
 * width="100%"|

FIX: WSAEventSelect Returns WSAEINVAL if Network Events is 0

 * }

Q168349

-

The information in this article applies to:


 * Microsoft Windows NT Workstation version 4.0
 * Microsoft Windows NT Server version 4.0

-

SYMPTOMS
When the network event's bitmask is set to 0 in the last parameter of WSAEventSelect, the API returns WSAEINVAL. As a consequence of this behavior, the user cannot cancel any prior association of network events with the socket.

RESOLUTION
Either of the following options will disassociate the socket from the event:


 * Call WSAEventSelect with NULL passed as the event parameter: rc = WSAEventSelect(socket, NULL, 0);

-or-
 * If your design permits, call closesocket to close the socket.

STATUS
This problem was corrected in Windows 2000.

MORE INFORMATION
WSAEventSelect is an API that specifies an event object to be associated with the supplied set of FD_XXX network events for a given socket. This event object is set when any of the nominated network events occur.

It should have been possible to cancel the association of network events on the socket by calling

"rc = WSAEventSelect(socket, hEventObject, 0);" However, due to the above-mentioned bug, this API fails with rc=10022, which means that the supplied parameters are invalid.

Additional query words:

Keywords : kbnetwork kbAPI kbOSWinNT400bug kbOSWin2000fix kbSDKPlatform kbWinsock kbGrpDSNet

Issue type : kbbug

Technology : kbWinNTsearch kbWinNTWsearch kbWinNTW400 kbWinNTW400search kbWinNT400xsearch kbWinNTSsearch kbWinNTS400xsearch kbWinNTS400