BUG: WSAIoctl(SIO_SET_QOS) Operates Synchronously When Using Overlapped I/O

ID: Q216631


The information in this article applies to:


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.


STATUS

Microsoft has confirmed this to be a bug in the Microsoft products 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:

Q192569 BUG: Winsock 2 APC Calls Get Lost on Windows 95 & 98.

Additional query words:


Keywords          : kbnetwork kbAPI kbGQos kbSDKPlatform kbWinOS98 kbWinsock kbGrpNet 
Version           : WINDOWS:
Platform          : WINDOWS 
Issue type        : kbbug 

Last Reviewed: March 6, 1999