Implement Miniport Driver OID Request Handling for NDIS 6.0 (Compact 2013)
3/26/2014
NDIS defines object identifier (OID) values to identify miniport adapter parameters, which include operating parameters such as device characteristics, configurable settings, and statistics. NDIS calls your miniport driver's MiniportOidRequest function to submit an OID request to query or set information in the driver. NDIS calls the MiniportOidRequest function either on its own behalf or on behalf of an overlying driver that calls NdisOidRequest or NdisFOidRequest. The NDIS 6.0 MiniportOidRequest function replaces the NDIS 5.xMiniportQueryInformation and MiniportSetInformation functions. Also, the NDIS_OID_REQUEST structure replaces the NDIS 5.xNDIS_REQUEST structure. The NDIS_OID_REQUEST structure differs from the NDIS_REQUEST structure of NDIS 5.x in that NDIS_OID_REQUEST can specify a time-out and a request identifier.
The following table shows which API elements have been renamed and/or changed for NDIS 6.0.
NDIS 5.x |
NDIS 6.0 |
---|---|
MiniportQueryInformation |
MiniportOidRequest |
NDIS_REQUEST |
NDIS_OID_REQUEST |
To implement miniport driver OID request handling for NDIS 6.0
Remove MiniportQueryInformation and MiniportSetInformation from your miniport driver.
Implement MiniportOidRequest to handle OID requests. As is the case with NDIS 5.x miniport drivers, NDIS serializes OID requests, so it does not call MiniportOidRequest until all pending requests are complete.
Implement MiniportCancelOidRequest to handle OID request cancellations. NDIS 6.0 miniport drivers provide a MiniportCancelOidRequest function so that NDIS can call MiniportCancelOidRequest to cancel an OID request. NDIS 6.0 does not reset the miniport adapter to cancel OID requests. If the MiniportOidRequest function returns NDIS_STATUS_PENDING, your miniport driver must subsequently call the NdisMOidRequestComplete function to complete the request.
For more information about miniport driver NDIS OID request handling functions, see NDIS OID Request Interface for Connectionless Miniport Drivers.