Registering CoNDIS WAN Drivers
A CoNDIS WAN miniport driver or MCM calls NdisMRegisterMiniportDriver from its DriverEntry function to register its standard MiniportXxx functions with NDIS. For more information about registering MiniportXxx functions, see Initializing a Miniport Driver.
A CoNDIS WAN call manager is an NDIS protocol driver. As such, a call manager calls NdisRegisterProtocolDriver to register its standard ProtocolXxx functions. For more information about registering an NDIS protocol driver, see Initializing a Protocol Driver. For information about other differences between call manager initialization and MCM initialization, see Differences in Initialization.
The call to NdisMRegisterMiniportDriver provides an NDIS_MINIPORT_DRIVER_CHARACTERISTICS structure from the miniport driver. You must specify the correct NDIS version number. For more information about setting the NDIS version number, see NDIS_MINIPORT_DRIVER_CHARACTERISTICS.
CoNDIS WAN drivers must indicate NDIS version 5.0 or later.
NDIS 6.0 and later drivers must register CoNDIS callback functions as follows:
To register CoNDIS ProtocolXxx and MiniportXxx functions, all CoNDIS drivers must call the NdisSetOptionalHandlers function.
To register its CoNDIS MiniportXxx functions, a miniport driver or miniport call manager (MCM) must call the NdisSetOptionalHandlers function from its MiniportSetOptions function and pass it an NDIS_MINIPORT_CO_CHARACTERISTICS structure. To register call manager ProtocolXxx functions, MCMs also provide an NDIS_CO_CALL_MANAGER_OPTIONAL_HANDLERS structure.
To register its CoNDIS ProtocolXxx functions, a client or call managers must call the NdisSetOptionalHandlers function from its ProtocolSetOptions function and must provide an NDIS_PROTOCOL_CO_CHARACTERISTICS structure. Clients must also provide an NDIS_CO_CLIENT_OPTIONAL_HANDLERS structure and call managers must also provide an NDIS_CO_CALL_MANAGER_OPTIONAL_HANDLERS structure.
For more information about CoNDIS driver registration, see CoNDIS Registration.