ProtocolClCloseCallComplete (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.
The ProtocolClCloseCallComplete function is used by connection-oriented NDIS clients. All connection-oriented NDIS clients must have ProtocolClCloseCallComplete functions to complete the asynchronous operations that they initiate with NdisClCloseCall.
Syntax
VOID ProtocolClCloseCallComplete(
_In_ NDIS_STATUS Status,
_In_ NDIS_HANDLE ProtocolVcContext,
_In_opt_ NDIS_HANDLE ProtocolPartyContext
);
Parameters
Status [in]
Specifies the final status of the client's request to close this call, which can be one of the following:NDIS_STATUS_SUCCESS
The call manager has successfully closed the call that existed on the given VC and deactivated the VC.NDIS_STATUS_XXX
The call manager failed the request to close the call for some CM-determined reason, and NDIS propagated the status returned by its ProtocolCmCloseCall function to the client.
ProtocolVcContext [in]
Specifies the handle to the client's per-VC context area This is the handle that the client originally passed to NDIS with NdisCoCreateVc or returned to NDIS from its ProtocolCoCreateVc function.ProtocolPartyContext [in, optional]
Specifies the handle to the client's per-party context area for the last remaining party on the client-created VC representing a multipoint connection. Otherwise, this parameter is NULL.
Return value
None
Remarks
If the given VC was created by the client and Status is NDIS_STATUS_SUCCESS, the client can now do either of the following:
Tear down its VC with NdisCoDeleteVc and release or prepare for reuse the context area(s) it allocated.
Reinitialize its per-VC context area and reuse its VC to make another connection with NdisClMakeCall.
If the VC was created by the call manager, the client should consider the NdisVcHandle invalid when ProtocolClCloseCallComplete is called. The client must not make any further NdisCl/CoXxx calls with this NdisVcHandle. After ProtocolClCloseCallComplete returns control, the call manager can delete its VC, thereby causing a call to the client's ProtocolCoDeleteVc function. The call manager can even dispatch another incoming call on the VC that it created, thereby causing a call to the client's ProtocolClIncomingCall function.
Requirements
Target platform |
Desktop |
Version |
|
Header |
Ndis.h (include Ndis.h) |
IRQL |
<= DISPATCH_LEVEL |
See also