WPUGetQOSTemplate

[This is preliminary documentation and subject to change.]

The GQOS WPUGetQOSTemplate function retrieves a GQOS template for a particular service provider.

INT
WPUGetQOSTemplate( 
  IN  const LPGUID lpProviderId, 
  IN  LPWSABUF lpQOSName,
  OUT LPQOS lpQOS
);
 

Parameters

lpProviderId
[in] Pointer to a provider-selected, globally unique identifier (GUID).
lpQOSName
[in] Specifies the QOS template name.
lpQOS
[in] Pointer to a QUALITYOFSERVICE structure.

Return Values

If WPUGetQOSTemplate succeeds, the return value is zero. If the function fails, the return value is SOCKET_ERROR. For extended error information, call WSAGetLastError.

Remarks

The WPUGetQOSTemplate function retrieves a GQOS name template containing the associated QUALITYOFSERVICE structure. If lpProviderId is NULL, WPUGetQOSTemplate attempts to find the GQOS name template in the "global" list of QOS names. Otherwise, WPUGetQOSTemplate searches the template list specific to the service provider indicated by lpProviderId.

The lpQOS parameter can include a ProviderSpecific buffer for retrieval with the basic QUALITYOFSERVICE structure. In this case, the ProviderSpecific buffer must be large enough to hold the provider-specific information stored in the template; otherwise WPUGetQOSTemplate returns WSAENOBUFS.

Error Codes

WSAEFAULT The lpQOS or lpQOSName argument is not a valid part of the user address space.
WSAEINVAL The specified lpProviderId is invalid or the lpQOS template is invalid.
WSA_NODATA The specified GQOS name could not be found.
WSAENOBUFS The provider-specific buffer is too small.

QuickInfo

  Windows NT: Requires version 5.0 or later.
  Windows: Requires Windows 98.
  Windows CE: Unsupported.
  Header: Declared in qosname.h.

See Also

QUALITYOFSERVICE, WSAGetQOSByName, WSCInstallQOSTemplate, WSCRemoveQOSTemplate