NDIS_CO_CLIENT_OPTIONAL_HANDLERS structure (ndis.h)
The NDIS_CO_CLIENT_OPTIONAL_HANDLERS structure specifies entry points for CoNDIS client ProtocolXxx functions for the protocol driver that passes this structure to the NdisSetOptionalHandlers function.
Syntax
typedef struct _NDIS_CO_CLIENT_OPTIONAL_HANDLERS {
NDIS_OBJECT_HEADER Header;
ULONG Reserved;
CO_CREATE_VC_HANDLER ClCreateVcHandler;
CO_DELETE_VC_HANDLER ClDeleteVcHandler;
CO_OID_REQUEST_HANDLER ClOidRequestHandler;
CO_OID_REQUEST_COMPLETE_HANDLER ClOidRequestCompleteHandler;
CL_OPEN_AF_COMPLETE_HANDLER_EX ClOpenAfCompleteHandlerEx;
CL_CLOSE_AF_COMPLETE_HANDLER ClCloseAfCompleteHandler;
CL_REG_SAP_COMPLETE_HANDLER ClRegisterSapCompleteHandler;
CL_DEREG_SAP_COMPLETE_HANDLER ClDeregisterSapCompleteHandler;
CL_MAKE_CALL_COMPLETE_HANDLER ClMakeCallCompleteHandler;
CL_MODIFY_CALL_QOS_COMPLETE_HANDLER ClModifyCallQoSCompleteHandler;
CL_CLOSE_CALL_COMPLETE_HANDLER ClCloseCallCompleteHandler;
CL_ADD_PARTY_COMPLETE_HANDLER ClAddPartyCompleteHandler;
CL_DROP_PARTY_COMPLETE_HANDLER ClDropPartyCompleteHandler;
CL_INCOMING_CALL_HANDLER ClIncomingCallHandler;
CL_INCOMING_CALL_QOS_CHANGE_HANDLER ClIncomingCallQoSChangeHandler;
CL_INCOMING_CLOSE_CALL_HANDLER ClIncomingCloseCallHandler;
CL_INCOMING_DROP_PARTY_HANDLER ClIncomingDropPartyHandler;
CL_CALL_CONNECTED_HANDLER ClCallConnectedHandler;
CL_NOTIFY_CLOSE_AF_HANDLER ClNotifyCloseAfHandler;
} NDIS_CO_CLIENT_OPTIONAL_HANDLERS, *PNDIS_CO_CLIENT_OPTIONAL_HANDLERS;
Members
Header
The
NDIS_OBJECT_HEADER structure for the
protocol driver CoNDIS characteristics structure (NDIS_CO_CLIENT_OPTIONAL_HANDLERS). The driver sets the
Type member of the structure that
Header specifies to NDIS_OBJECT_TYPE_CO_CLIENT_OPTIONAL_HANDLERS, the
Revision member to NDIS_CO_CLIENT_OPTIONAL_HANDLERS_REVISION_1, and the
Size member to NDIS_SIZEOF_CO_CLIENT_OPTIONAL_HANDLERS_REVISION_1.
Reserved
Reserved for NDIS.
ClCreateVcHandler
The entry point of the caller's ProtocolCoCreateVc function.
ClDeleteVcHandler
The entry point of the caller's ProtocolCoDeleteVc function.
ClOidRequestHandler
The entry point of the caller's ProtocolCoOidRequest function.
ClOidRequestCompleteHandler
The entry point of the caller's ProtocolCoOidRequestComplete function.
ClOpenAfCompleteHandlerEx
The entry point of the caller's ProtocolClOpenAfCompleteEx function.
ClCloseAfCompleteHandler
The entry point of the caller's ProtocolClCloseAfComplete function.
ClRegisterSapCompleteHandler
The entry point of the caller's ProtocolClRegisterSapComplete function. A client uses this function to accept incoming calls from remote machines.
ClDeregisterSapCompleteHandler
The entry point of the caller's ProtocolClDeregisterSapComplete function.
ClMakeCallCompleteHandler
The entry point of the caller's ProtocolClMakeCallComplete function. A client uses this function to make outgoing calls to remote machines.
ClModifyCallQoSCompleteHandler
The entry point of the caller's ProtocolClModifyCallQoSComplete function. A client uses this function to dynamically make changes in the quality of service (QoS) on an established virtual connection (VC) or to negotiate with the call manager to establish the QoS when the client sets up an incoming call.
ClCloseCallCompleteHandler
The entry point of the caller's ProtocolClCloseCallComplete function.
ClAddPartyCompleteHandler
The entry point of the caller's ProtocolClAddPartyComplete function. A client uses this function to establish point-to-multipoint VCs for outgoing calls to remote machines.
ClDropPartyCompleteHandler
The entry point of the caller's ProtocolClDropPartyComplete function.
ClIncomingCallHandler
The entry point of the caller's ProtocolClIncomingCall function. A client uses this function to accept incoming calls from remote machines.
ClIncomingCallQoSChangeHandler
The entry point of the caller's ProtocolClIncomingCallQoSChange function. A client uses this function to accept incoming calls from remote machines on which the sending client can dynamically change the QoS.
ClIncomingCloseCallHandler
The entry point of the caller's ProtocolClIncomingCloseCall function.
ClIncomingDropPartyHandler
The entry point of the caller's ProtocolClIncomingDropParty function.
ClCallConnectedHandler
The entry point of the caller's ProtocolClCallConnected function. A client uses this function to accept incoming calls from remote machines.
ClNotifyCloseAfHandler
The entry point of the caller's ProtocolClNotifyCloseAf function.
Remarks
To specify entry points as a CoNDIS client, a protocol driver initializes an NDIS_CO_CLIENT_OPTIONAL_HANDLERS structure and passes it to the NdisSetOptionalHandlers function.
The client calls NdisSetOptionalHandlers from the ProtocolSetOptions function. The client must set every ClXxx member in the NDIS_CO_CLIENT_OPTIONAL_HANDLERS structure to a caller-supplied ProtocolXxx function, even if the call manager does not support incoming calls, outgoing calls, or point-to-multipoint connections. For whatever subset of connection-oriented functionality that a client does not support, its placeholder ProtocolXxx functions should return NDIS_STATUS_NOT_SUPPORTED.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Supported in NDIS 6.0 and later. |
Header | ndis.h (include Ndis.h) |