Implementing a ProtocolPnPEvent Handler in an Intermediate Driver (NDIS 5.1)
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 implementation of a ProtocolPnPEventhandler in intermediate drivers is nearly identical to the implementation in protocol drivers. For more information about implementing a ProtocolPnPEventhandler in an intermediate driver, see Handling PnP Events and PM Events in a Protocol Driver.
Intermediate driver ProtocolPnPEvent handlers differ from protocol drivers as follows:
NDIS 5.1 intermediate drivers pass on PnP events to higher layer drivers by calling NdisIMNotifyPnPEvent.
An intermediate driver should always succeed a NetEventSetPower event by returning NDIS_STATUS_SUCCESS. For more information about handling a Set Power request, see Handling a Set Power Request.
The NetEventQueryPower request queries whether the intermediate driver's protocol edge can handle the underlying NIC's transition to a particular power state. An intermediate driver should always succeed this event by returning NDIS_STATUS_SUCCESS. Note that a NetEventQueryPower is always followed by a NetEventSetPower. A NetEventSetPower to the device's current power state in effect cancels the NetEventQueryPower.