CO_CALL_PARAMETERS structure

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 CO_CALL_PARAMETERS structure contains call parameters used by connection-oriented clients, call managers, MCM drivers, and connection-oriented miniport drivers. The call parameters are used to set up an outgoing call, request quality of service (QoS) for an outgoing call, indicate the QoS for an incoming call, activate a VC for an outgoing or incoming call, negotiate a change of call parameters for a VC, or to add a new party to a multipoint call.

Syntax

typedef struct _CO_CALL_PARAMETERS {
  ULONG                       Flags;
  PCO_CALL_MANAGER_PARAMETERS CallMgrParameters;
  PCO_MEDIA_PARAMETERS        MediaParameters;
} CO_CALL_PARAMETERS, *PCO_CALL_PARAMETERS;

Members

  • Flags
    The flags can be one or more (ORed) of the following:

    • PERMANENT_VC
      When making an outgoing call, a client sets this flag before calling NdisClMakeCall to indicate to the call manager that it must make the call on a permanent virtual circuit (PVC). If the client does not specify media parameters, the call manager searches its list of configured PVCs for a PVC that is configured with a SAP that matches the destination SAP of the outgoing call. If the client does specify media parameters, the call manager does not search its list of configured PVCs; instead, it uses the PVC specified by the client in the media parameters. If the call manager finds a PVC that meets the requirements of the call, it uses this PVC and returns the PERMANENT_VC flag set in a call to NdisCmMakeCallComplete or NdisMCmMakeCallComplete. If the call manager is unable to find a suitable PVC, it fails the call attempt with NDIS_STATUS_FAILURE.

      Note that if the client does not set the PERMANENT_VC flag and does not specify media parameters, the call manager always searches its list of configured PVCs for one that is configured with a SAP that matches the destination SAP of the outgoing call. If it cannot find such a PVC, the call manager attempts to establish a switched virtual circuit (SVC) for the outgoing call.

      On an incoming call, the call manager sets this flag if the VC handle that it passes to the client in the call to NdisCmDispatchIncomingCall or NdisMCmDispatchIncomingCall represents a PVC. This indicates that the call manager found a PVC that matches a SAP registered by the client.

    • CALL_PARAMETERS_CHANGED
      Before calling NdisMCmMakeCallComplete, the call manager sets this flag if any value within CO_CALL_PARAMETERS has been changed during the call-setup process as a result of negotiation with the network or a signaling peer. (Whether and when such negotiation occurs during call setup depends on the signaling protocol.) The client must then inspect CO_CALL_PARAMETERS and its substructures to determine which parameters have changed. Depending on the signaling protocol, the client can accept the new call parameters, tear down the call by calling NdisClCloseCall, or attempt to renegotiate the call parameters by calling NdisClModifyCallQoS.

    • QUERY_CALL_PARAMETERS
      This flag is reserved.

    • BROADCAST_VC
      This flag is reserved.

    • MULTIPOINT_VC
      When making an outgoing call, the client can set this flag before calling NdisClMakeCall to indicate that the client is the root of a multipoint connection.

      On an incoming call, the call manager can set this flag before calling NdisMCmDispatchIncomingCall to indicate that the client is a leaf of a multipoint connection.

  • CallMgrParameters
    Pointer to a buffered CO_CALL_MANAGER_PARAMETERS structure that specifies the call manager parameters. For a detailed description of this structure, see CO_CALL_MANAGER_PARAMETERS.

  • MediaParameters
    Pointer to a buffered CO_MEDIA_PARAMETERS structure that specifies the media parameters. For a detailed description of this structure, see CO_MEDIA_PARAMETERS.

Remarks

CO_CALL_PARAMETERS contains call parameters used by connection-oriented clients, call managers or MCM drivers, and connection-oriented miniport drivers. The call parameters are used to set up outgoing calls, to indicate incoming calls, to activate a VC for an outgoing or incoming call, to request a change of call parameters for a VC, and to add a party to a multipoint call.

The flags in CO_CALL_PARAMETERS are of interest to clients and call managers. A client can set flags in CO_CALL_PARAMETERS before calling NdisClMakeCall. Except for CALL_PARAMETERS_CHANGED (which the call manager can set before calling NdisCmMakeCallComplete or NdisMCmMakeCallComplete to indicate a change in call parameters by a remote entity on the network), the call manager can set flags in CO_CALL_PARAMETERS before calling NdisCmDispatchIncomingCall or NdisMCmDispatchIncomingCall.

The call manager parameters pointed to by CO_CALL_PARAMETERS are of interest primarily to clients and call managers. These parameters are contained in a structure of type CO_CALL_MANAGER_PARAMETERS, which can specify generic parameters that apply to all call managers, as well as specific parameters that apply to a specific signaling protocol and possibly to a particular call manager that supports the protocol. CO_CALL_MANAGER_PARAMETERS specifies call parameters that a call manager uses to set up an outgoing call and that a client uses to determine whether to accept an incoming call. In addition, a client uses CO_CALL_MANAGER_PARAMETERS to request a change of call parameters for a VC, and a call manager uses CO_CALL_MANAGER_PARAMETERS to indicate an incoming request to change the call parameters for a VC. Also, when adding a party to multipoint call, the client uses CO_CALL_MANAGER_PARAMETERS to specify the address of the new party.

The media parameters in CO_CALL_PARAMETERS are of interest primarily to miniport drivers. The media parameters are contained in a structure of type CO_MEDIA_PARAMETERS, which can contain generic parameters that apply to all miniport drivers, as well as specific parameters that apply to a specific medium and possibly to a particular miniport driver that controls the medium. Typically, a call manager uses CO_MEDIA_PARAMETERS to specify media parameters to the miniport driver. The miniport driver either reserves resources for the VC or activates the VC with the specified media parameters.

Requirements

Header

Ndis.h (include Ndis.h)

See also

MiniportCoActivateVc

NdisClAddParty

NdisClIncomingCallComplete

NdisClMakeCall

NdisClModifyCallQoS

NdisCmActivateVc

NdisCmAddPartyComplete

NdisCmDispatchIncomingCall

NdisCmDispatchIncomingCallQoSChange

NdisCmMakeCallComplete

NdisCmModifyCallQoSComplete

NdisMCmActivateVc

NdisMCmAddPartyComplete

NdisMCmDispatchIncomingCall

NdisMCmDispatchIncomingCallQosChange

NdisMCmMakeCallComplete

NdisMCmModifyCallQoSComplete

NdisMCoActivateVcComplete

ProtocolClAddPartyComplete

ProtocolClIncomingCall

ProtocolClIncomingCallQoSChange

ProtocolClMakeCallComplete

ProtocolClModifyCallQoSComplete

ProtocolCmActivateVcComplete

ProtocolCmAddParty

ProtocolCmIncomingCallComplete

ProtocolCmMakeCall

ProtocolCmModifyCallQoS

 

 

Send comments about this topic to Microsoft