Filter Module Direct OID Requests

To support the direct OID request path, filter drivers provide FilterXxx function entry points in the NDIS_FILTER_DRIVER_CHARACTERISTICS structure and NDIS provides NdisFXxx functions for filter drivers.

The direct OID request interface is similar to the standard OID request interface. For example, the NdisFDirectOidRequest and FilterDirectOidRequest functions are similar to the NdisFOidRequest and FilterOidRequest functions.

Note  NDIS 6.1 and later support specific OIDs for use with the direct OID request interface. OIDs that existed before NDIS 6.1 and some NDIS 6.1 OIDs are not supported. To determine if an OID can be used in the direct OIDs interface, see the OID reference page. For example, see the note in the OID_TCP_TASK_IPSEC_OFFLOAD_V2_ADD_SA OID.

Filter drivers must be able to handle direct OID requests that are not serialized. Unlike the standard OID request interface, NDIS does not serialize direct OID requests with other requests that are sent with the direct OID interface or with the standard OID request interface. Also, filter drivers must be able to handle direct OID requests at IRQL <= DISPATCH_LEVEL.

To support the direct OIDs request interface, use the documentation for the standard OID request interface. The following table shows the relationship between the functions in the direct OID request interface and the standard OID request interface.

Direct OID function Standard OID function

FilterDirectOidRequest

FilterOidRequest

FilterCancelDirectOidRequest

FilterCancelOidRequest

FilterDirectOidRequestComplete

FilterOidRequestComplete

NdisFDirectOidRequest

NdisFOidRequest

NdisFDirectOidRequestComplete

NdisFDirectOidRequestComplete

NdisFCancelDirectOidRequest

NdisFCancelOidRequest