Share via


ProtocolCmActivateVcComplete (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 ProtocolCmActivateVcComplete function is required. This function indicates to the call manager that a previous call to NdisCoActivateVc has been completed by the miniport driver.

Syntax

VOID ProtocolCmActivateVcComplete(
  _In_ NDIS_STATUS        Status,
  _In_ NDIS_HANDLE        CallMgrVcContext,
  _In_ CO_CALL_PARAMETERS CallParameters
);

Parameters

  • Status [in]
    Specifies the final status, as indicated by the miniport driver, of the request by the call manager to activate a VC.

  • CallMgrVcContext [in]
    Specifies the handle to a call manager-allocated context area in which the call manager maintains its per-VC state. The call manager supplied this handle from its ProtocolCoCreateVc function.

  • CallParameters [in]
    Pointer to the call parameters as specified by the call manager in a call to NdisCmActivateVc.

Return value

None

Remarks

When other network components have completed their operations for activating a virtual connection, initiated when the call manager called NdisCmActivateVc, NDIS notifies the call manager that the VC has been activated by calling its ProtocolCmActivateVcComplete function. The status of the activation is found in Status. Possible values for Status include, but are not limited to:

  • NDIS_STATUS_SUCCESS
    Indicates that the VC completed successfully and the call manager can continue operations on this VC as required by its media.

  • NDIS_STATUS_RESOURCES
    Indicates that another component in the activation has failed to activate the virtual connection because of a lack of memory or an inability allocate another type of resource.

  • NDIS_STATUS_NOT_ACCEPTED
    Indicates that an activation is currently pending on the virtual connection. Only one activation can be processed at a time for a virtual connection. The request to activate the VC should be tried again at a later time.

  • NDIS_STATUS_CLOSING
    Indicates that a deactivation is pending on the VC and the VC is no longer available for network communication until the deactivation has been completed and a successful activation has taken place.

  • NDIS_STATUS_INVALID_DATA
    Indicates that the miniport driver has rejected the call parameters at CallParameters as invalid for the adapter.

ProtocolCmActivateVcComplete must check the status returned in Status to ensure that the virtual connection has been activated successfully. The call manager must not attempt to communicate over the virtual connection if Status is not NDIS_STATUS_SUCCESS.

Call managers must complete any processing required by their network media to ensure that the virtual connection is ready for data transmission before returning control to NDIS.

If the call manager specified either ROUND_UP_FLOW or ROUND_DOWN_FLOW in the CallParameters -> MediaParameters -> Flags, the call parameters returned in CallParameters can have been changed by the miniport driver. Call managers should examine the call parameters that were returned to ensure proper operation. If the new call parameters are unsatisfactory, the call manager should either call NdisCmActivateVc again with new call parameters or deactivate the VC with NdisCmDeactivateVc.

Requirements

Target platform

Desktop

Version

See ProtocolCmActivateVcComplete.

Header

Ndis.h (include Ndis.h)

IRQL

<= DISPATCH_LEVEL

See also

NdisCmActivateVc

NdisCmDeactivateVc

ProtocolCmMakeCall

 

 

Send comments about this topic to Microsoft