PROTOCOL_CL_INCOMING_CALL_QOS_CHANGE callback function (ndis.h)
The ProtocolClIncomingCallQoSChange function is used by connection-oriented clients on networks that support dynamic quality-of-service. Such clients must have ProtocolClIncomingCallQoSChange functions. Otherwise, such a protocol driver's registered ProtocolClIncomingCallQoSChange function can simply return control.
Syntax
PROTOCOL_CL_INCOMING_CALL_QOS_CHANGE ProtocolClIncomingCallQosChange;
void ProtocolClIncomingCallQosChange(
[in] NDIS_HANDLE ProtocolVcContext,
[in] PCO_CALL_PARAMETERS CallParameters
)
{...}
Parameters
[in] ProtocolVcContext
Specifies the handle to the client's per-VC context area for the VC on which a request to modify the quality of service has come in over the network.
[in] CallParameters
Pointer to a buffer, formatted as a CO_CALL_PARAMETERS structure, that contains the new QoS specification.
Return value
None
Remarks
A call to
ProtocolClIncomingCallQoSChange indicates to the client that a remote peer has requested a change
in the quality of service on this call. The new quality of service is described at
CallParameters . The client can accept the requested change by simply returning control. Otherwise,
ProtocolClIncomingCallQoSChange should tear down the call with
NdisClCloseCall.
Examples
To define a ProtocolClIncomingCallQoSChange function, you must first provide a function declaration that identifies the type of function you're defining. Windows provides a set of function types for drivers. Declaring a function using the function types helps Code Analysis for Drivers, Static Driver Verifier (SDV), and other verification tools find errors, and it's a requirement for writing drivers for the Windows operating system.For example, to define a ProtocolClIncomingCallQoSChange function that is named "MyClIncomingCallQoSChange", use the PROTOCOL_CL_INCOMING_CALL_QOS_CHANGE type as shown in this code example:
PROTOCOL_CL_INCOMING_CALL_QOS_CHANGE MyClIncomingCallQoSChange;
Then, implement your function as follows:
_Use_decl_annotations_
VOID
MyClIncomingCallQoSChange(
NDIS_HANDLE ProtocolVcContext,
PCO_CALL_PARAMETERS CallParameters
)
{...}
The PROTOCOL_CL_INCOMING_CALL_QOS_CHANGE function type is defined in the Ndis.h header file. To more accurately identify errors when you run the code analysis tools, be sure to add the Use_decl_annotations annotation to your function definition. The Use_decl_annotations annotation ensures that the annotations that are applied to the PROTOCOL_CL_INCOMING_CALL_QOS_CHANGE function type in the header file are used. For more information about the requirements for function declarations, see Declaring Functions by Using Function Role Types for NDIS Drivers.
For information about Use_decl_annotations, see Annotating Function Behavior.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Supported for NDIS 6.0 and NDIS 5.1 drivers (see ProtocolClIncomingCallQoSChange (NDIS 5.1)) in Windows Vista. Supported for NDIS 5.1 drivers (see ProtocolClIncomingCallQoSChange (NDIS 5.1)) in Windows XP. |
Target Platform | Windows |
Header | ndis.h (include Ndis.h) |
IRQL | <= DISPATCH_LEVEL |