INFO: NetworkEvents.iErrorCode[FD_QOS_BIT] Is Status

ID: Q196360

The information in this article applies to:

SUMMARY

When you write a GQoS-enabled (Generic Quality of Service) Winsock application using WSAEventSelect to receive asynchronous network event notifications, the iErrorCode member of the NetworkEvents variable (returned by WSAEnumNetworkEvents) should be interpreted as a status indicator for FD_QOS event notifications, not as an error indicator.

MORE INFORMATION

Event notifications such as FD_ACCEPT, FD_CONNECT, FD_READ, FD_WRITE, and so forth, return zero in iErrorCode if there is no error. However, iErrorCode always returns a non-zero value for the FD_QOS event notification. The values returned in iErrorCode for FD_QOS are one of the WSA_QOS_xxx status values defined in WinSock2.h. While some of these values can and should be viewed as indicative of an error (for example, WSA_QOS_xxx_ERROR, WSA_QOS_xxx_FAILURE, WSA_QOS_BAD_xxx), others, such as WSA_QOS_REQUEST_CONFIRMED, are merely status indicators.

For example, in a receiving application that has registered for FD_QOS event notification, the status value WSA_QOS_SENDERS is returned in iErrorCode when at least one RSVP PATH message from a sending application has arrived. Additionally, in a sending application that has registered for FD_QOS event notification, the status WSA_QOS_RECEIVERS is returned in iErrorCode when at least one RSVP RESV message has arrived from a receiving application.

NOTE: If an RSVP_OBJECT_STATUS_INFO object is returned in the provider- specific buffer as a result of calling WSAIoctl(...,SIO_GET_QOS,...), the value of the StatusCode member of that structure corresponds to the iErrorCode value.

REFERENCES

Platform SDK documentation for Generic Quality of Service (GQoS).

RFC 2205, "Resource ReSerVation Protocol (RSVP) -- Version 1 Functional Specification"

Additional query words:

Keywords          : kbnetwork kbAPI kbGQos kbSDKPlatform kbWinOS98 kbWinsock kbGrpNet 
Issue type        : kbinfo

Last Reviewed: December 2, 1998