NdisMCoActivateVcComplete function (ndis.h)

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

Syntax

void NdisMCoActivateVcComplete(
  [in] NDIS_STATUS         Status,
  [in] NDIS_HANDLE         NdisVcHandle,
  [in] PCO_CALL_PARAMETERS CallParameters
);

Parameters

[in] Status

Specifies the final status of the activate-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 MiniportCoActivateVc function.

[in] CallParameters

Pointer to a structure of type CO_CALL_PARAMETERS, supplied by the call manager, specifying the call and media parameters for the VC activation.

Return value

None

Remarks

A connection-oriented miniport driver must call NdisMCoActivateVcComplete if its MiniportCoActivateVc function previously returned NDIS_STATUS_PENDING in response to a request to activate or reactivate the VC identified by the given NdisVcHandle . The call manager, which initiated the VC activation with a call to NdisCmActivateVc, cannot notify NDIS or its client whether transfers on the VC can be made using the supplied call parameters until the miniport driver calls NdisMCoActivateVcComplete.

If the miniport driver finds the CM-supplied call parameters unacceptable, it fails the VC activation when it calls NdisMCoActivateVcComplete. Failing the initial activation of a VC can cause the protocol that created the VC to tear it down. If the miniport driver fails a request to reactivate an established VC with new call parameters, it must restore the original call parameters established for that VC. Depending on the nature of the network medium, a miniport driver can modify the media parameters if the round-up and/or round-down flag(s) are set before it calls NdisMCoActivateVcComplete.

A call to NdisMCoActivateVcComplete causes NDIS to call the ProtocolCmActivateVcComplete function of the call manager that originally requested the VC activation.

Requirements

Requirement Value
Minimum supported client Supported for NDIS 6.0 and NDIS 5.1 drivers (see NdisMCoActivateVcComplete (NDIS 5.1)) in Windows Vista. Supported for NDIS 5.1 drivers (see NdisMCoActivateVcComplete (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

CO_CALL_PARAMETERS

MiniportCoActivateVc

NdisCmActivateVc

NdisCmDeactivateVc

ProtocolCmActivateVcComplete