Porting Intermediate Driver Initialization to NDIS 6.0

Like NDIS 5.x, NDIS 6.0 intermediate drivers register with NDIS in the DriverEntry routine. In NDIS 6.0, the NdisMInitializeWrapper, NdisMRegisterUnloadHandler, NdisMRegisterMiniport, and NdisRegisterProtocol functions are eliminated. To register the intermediate driver with NDIS 6.0, the DriverEntry routine must, at a minimum:

  1. Call the NdisMRegisterMiniportDriver function with the NDIS_INTERMEDIATE_DRIVER flag set to register the driver's MiniportXxx functions.

  2. Call the NdisRegisterProtocolDriver function to register the driver's ProtocolXxx functions if the driver subsequently binds itself to an underlying NDIS driver.

  3. Call the NdisIMAssociateMiniport function to inform NDIS about the association between the driver's miniport upper edge and protocol lower edge.

For more information about initializing the miniport upper edge of an intermediate driver, see Porting Miniport Driver Initialization to NDIS 6.0.

For more information about initializing the protocol lower edge of an intermediate driver, see Porting Protocol Driver Initialization to NDIS 6.0.

For more information about NDIS 6.0 intermediate driver initialization, see Initializing an Intermediate Driver and Initializing a Miniport-Intermediate Driver.