Differences in Calls to NdisXxx Functions
A call manager calls a different set of call manager functions than an MCM driver. A call manager calls NdisCm_Xxx_ functions, and an MCM driver calls NdisMCm_Xxx_ functions.
An MCM driver does not call the NdisCo_Xxx_ functions that both connection-oriented clients and call managers call. Instead, an MCM driver calls the following comparable NdisMCm_Xxx_ functions:
NdisMCmCreateVc instead of NdisCoCreateVc
NdisMCmDeleteVc instead of NdisCoDeleteVc
NdisMCmOidRequest instead of NdisCoOidRequest
NdisMCmOidRequestComplete instead of NdisCoOidRequestComplete
An MCM driver does not require a call that is comparable to NdisCoSendNetBufferLists, because the send interface between the call manager and the miniport driver is internal to an MCM driver and therefore opaque to NDIS.