NdisClIncomingCallComplete (NDIS 5.1) function
Note NDIS 5. x has been deprecated and is superseded by NDIS 6. x. For new NDIS driver development, see Network Drivers Starting with Windows Vista. For information about porting NDIS 5. x drivers to NDIS 6. x, see Porting NDIS 5.x Drivers to NDIS 6.0.
NdisClIncomingCallComplete returns a client's acceptance or rejection of an offered incoming call, for which the client's ProtocolClIncomingCall function previously returned NDIS_STATUS_PENDING.
Syntax
VOID NdisClIncomingCallComplete(
_In_ NDIS_STATUS Status,
_In_ NDIS_HANDLE NdisVcHandle,
_In_ PCO_CALL_PARAMETERS CallParameters
);
Parameters
Status [in]
Is set to NDIS_STATUS_SUCCESS if the client accepts the offered call. Otherwise, this parameter can be set to any NDIS_STATUS_XXX except NDIS_STATUS_PENDING to indicate the client-determined reason for rejecting the call.NdisVcHandle [in]
Specifies the handle to the VC that was created by the call manager to represent the incoming call. The client obtained this handle from it per-VC state designated by the ProtocolVcContext passed as an input parameter to its ProtocolClIncomingCall function.CallParameters [in]
Pointer to a structure of type CO_CALL_PARAMETERS, specifying the call parameters for the incoming call.
Return value
None
Remarks
If a client's ProtocolClIncomingCall function returns NDIS_STATUS_PENDING for an offered call incoming on a particular SAP, previously registered by the client with NdisClRegisterSap, the client subsequently must call NdisClIncomingCallComplete to indicate whether it is accepting or rejecting the offered call.
Before it calls NdisClIncomingCallComplete, such a client can negotiate with the call manager by calling NdisClModifyCallQoS one or more times until both drivers reach an agreement on an acceptable quality of service for the incoming call or the client determines it should reject the offered call because its attempts to modify the QoS reach some client-determined limit without resulting in an agreement.
If the client has changed the call parameters passed in to its ProtocolClIncomingCall function, it must set the Flags member in the CO_CALL_PARAMETERS structure with CALL_PARAMETERS_CHANGED when it passes these changes to NdisClIncomingCallComplete. Depending on whether the call manager accepts or rejects the client's proposed changes to the call parameters, NDIS subsequently calls either the client's ProtocolClCallConnected function or its ProtocolClIncomingCloseCall function, respectively.
A call to NdisClIncomingCallComplete causes NDIS to call the CM's ProtocolCmIncomingCallComplete function. NDIS passes the client-supplied parameters of NdisClIncomingCallComplete as input parameters to ProtocolCmIncomingCallComplete.
If a client rejects an offered call by setting Status to something other than NDIS_STATUS_SUCCESS, the client must consider the CallParameters pointer invalid as soon as its call to NdisClIncomingCallComplete occurs.
Requirements
Target platform |
Universal |
Version |
|
Header |
Ndis.h (include Ndis.h) |
Library |
Ndis.lib |
IRQL |
<= DISPATCH_LEVEL |
See also
ProtocolCmIncomingCallComplete