OID_RECEIVE_FILTER_PARAMETERS
An overlying driver issues an OID method request of OID_RECEIVE_FILTER_PARAMETERS to obtain the current configuration parameters of a filter on a network adapter.
The InformationBuffer member of the NDIS_OID_REQUEST structure contains a pointer to an NDIS_RECEIVE_FILTER_PARAMETERS structure. NDIS uses the FilterId member in the input structure to identify the filter.
After a successful return from the OID method request, the InformationBuffer member of the NDIS_OID_REQUEST structure contains a pointer to a buffer. This buffer is formatted to contain the following:
An NDIS_RECEIVE_FILTER_PARAMETERS structure that specifies the parameters for an NDIS receive filter.
An array of NDIS_RECEIVE_FILTER_FIELD_PARAMETERS structures that specifies the filter test criterion for a field in a network packet header.
Remarks
NDIS receive filters are used in the following NDIS interfaces:
NDIS Packet Coalescing. For more information about how to use receive filters in this interface, see Managing Packet Coalescing Receive Filters.
Single Root I/O Virtualization (SR-IOV). For more information about how to use receive filters in this interface, see Setting a Receive Filter on a Virtual Port.
Virtual Machine Queue (VMQ). For more information about how to use receive filters in this interface, see Setting and Clearing VMQ Filters.
Overlying drivers issue OID method requests of OID_RECEIVE_FILTER_PARAMETERS to obtain the configuration parameters for a receive filter that was set on a network adapter. This includes a receive filter that was set on a VMQ receive queue or SR-IOV virtual port (VPort), as well as a packet coalescing filter that was downloaded to the miniport driver.
The overlying driver obtained the filter identifier from an earlier OID method request of OID_RECEIVE_FILTER_SET_FILTER or from OID requests of OID_RECEIVE_FILTER_ENUM_FILTERS.
Return status codes
NDIS handles the OID request of OID_RECEIVE_FILTER_PARAMETERS for miniport drivers, and returns one of the following status codes:
NDIS_STATUS_SUCCESS
The request completed successfully. The InformationBuffer points to an NDIS_RECEIVE_FILTER_PARAMETERS structure.
NDIS_STATUS_PENDING
The request is pending completion. NDIS passes the final status code and results to the OID request completion handler of the caller after the request is complete.
NDIS_STATUS_INVALID_PARAMETER
The overlying driver or application provided an invalid filter identifier. A filter identifier is not valid if it is zero or if it specifies an undefined filter.
NDIS_STATUS_INVALID_LENGTH
The information buffer was too short. NDIS sets the DATA.QUERY_INFORMATION.BytesNeeded member in the NDIS_OID_REQUEST structure to the minimum buffer size that is required.
NDIS_STATUS_FAILURE
The request failed for other reasons.
Requirements
Version |
Supported in NDIS 6.20 and later. |
Header |
Ntddndis.h (include Ndis.h) |
See also
OID_RECEIVE_FILTER_ENUM_FILTERS