NdisMCoDeactivateVcComplete function (ndis.h)

NdisMCoDeactivateVcComplete notifies NDIS and the call manager that the miniport driver has finished processing a CM-initiated deactivate-VC request, for which the miniport driver previously returned NDIS_STATUS_PENDING.

Syntax

void NdisMCoDeactivateVcComplete(
  [in] NDIS_STATUS Status,
  [in] NDIS_HANDLE NdisVcHandle
);

Parameters

[in] Status

Specifies the final status of the deactivate-VC operation, which can be NDIS_STATUS_SUCCESS or any NDIS_STATUS_ XXX except NDIS_STATUS_PENDING.

[in] NdisVcHandle

Specifies the handle identifying the VC. The caller obtained this handle from its per-VC state, designated by the MiniportVcContext passed as an input parameter to its MiniportCoDeactivateVc function.

Return value

None

Remarks

A connection-oriented miniport driver must call NdisMCoDeactivateVcComplete if its MiniportCoDeactivateVc function previously returned NDIS_STATUS_PENDING in response to a request to deactivate the VC identified by the given NdisVcHandle . The call manager, which initiated the VC deactivation with a call to NdisCmDeactivateVc, cannot notify NDIS or its client whether transfers have been disabled on the VC until the miniport driver calls NdisMCoDeactivateVcComplete.

Before it deactivates a VC, the miniport driver must complete any pending transfers on the VC. That is, the miniport driver must indicate all outstanding receives and transmit all outstanding sends before calling NdisMCoDeactivateVcComplete.

A call to NdisMCoDeactivateVcComplete causes NDIS to call the ProtocolCmDeactivateVcComplete function of the call manager that originally requested the VC deactivation. Following its call to NdisMCoDeactivateVcComplete, the miniport driver can neither indicate receives nor transmit sends on the VC.

Requirements

Requirement Value
Minimum supported client Supported for NDIS 6.0 and NDIS 5.1 drivers (see NdisMCoDeactivateVcComplete (NDIS 5.1)) in Windows Vista. Supported for NDIS 5.1 drivers (see NdisMCoDeactivateVcComplete (NDIS 5.1)) in Windows XP.
Target Platform Desktop
Header ndis.h (include Ndis.h)
Library Ndis.lib
IRQL <= DISPATCH_LEVEL
DDI compliance rules Irql_MCO_Function(ndis)

See also

MiniportCoDeactivateVc

NdisCmActivateVc

NdisCmDeactivateVc

ProtocolCmDeactivateVcComplete