BUG: WSAIoctl(SIO_SET_QOS) Operates Synchronously When Using Overlapped I/O (216631)
The information in this article applies to:
- Microsoft Windows 2000 Server
- Microsoft Windows 2000 Advanced Server
- Microsoft Windows 2000 Professional
- Microsoft Windows 98
This article was previously published under Q216631 SYMPTOMS
When using the SIO_SET_QOS control code in WSAIoctl and the call to WSAIoctl includes either a WSAOVERLAPPED structure or a CompletionRoutine, the function does not return immediately, even if the call takes some time to complete. Thus the API does not return WSAEWOULDBLOCK. The effect is that calls to WSAIoctl(SIO_SET_QOS) operate in a synchronous fashion regardless of the presence of an overlapped structure or a completion function. This behavior does not occur when using the SIO_GET_QOS control code.
RESOLUTION
Though contrary to expectation, this behavior should not break application code written to handle overlapped I/O. Another mechanism you can use to avoid blocking, other than overlapped I/O, is multiple threads.
STATUSMicrosoft has confirmed that this is a bug in the Microsoft products that are listed at the beginning of this article. REFERENCES
For additional information about using a completion function on Windows 98, please see the following
article in the Microsoft Knowledge Base: 192569 BUG: Winsock 2 APC Calls Get Lost on Windows 95 & 98.
Modification Type: | Minor | Last Reviewed: | 12/20/2004 |
---|
Keywords: | kbDSWNET2003Swept kbAPI kbbug kbGQos kbnetwork kbWinsock KB216631 |
---|
|