BUG: WSAEventSelect( ) Returns WSAEINVAL if Network Events is 0

ID: 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

Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article. We are researching this bug and will post new information here in the Microsoft Knowledge Base as it becomes available.


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 kbNTOS400bug kbSDKPlatform kbWinsock kbGrpNet
Version : winnt:4.0
Platform : winnt
Issue type : kbbug


Last Reviewed: October 15, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.