NdisMCoDeactivateVcComplete (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.

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

Syntax

VOID NdisMCoDeactivateVcComplete(
  _In_ NDIS_STATUS Status,
  _In_ NDIS_HANDLE NdisVcHandle
);

Parameters

  • Status [in]
    Specifies the final status of the deactivate-VC operation, which can be NDIS_STATUS_SUCCESS or any NDIS_STATUS_XXX except NDIS_STATUS_PENDING.

  • NdisVcHandle [in]
    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 NIC 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

Target platform

Universal

Version

See NdisMCoDeactivateVcComplete.

Header

Ndis.h (include Ndis.h)

Library

Ndis.lib

IRQL

<= DISPATCH_LEVEL

See also

MiniportCoDeactivateVc

NdisCmActivateVc

NdisCmDeactivateVc

ProtocolCmDeactivateVcComplete

 

 

Send comments about this topic to Microsoft