OID_RECEIVE_FILTER_QUEUE_PARAMETERS

Overlying drivers issue object identifier (OID) method requests of OID_RECEIVE_FILTER_QUEUE_PARAMETERS to obtain the current configuration parameters of a receive queue. The InformationBuffer member of the NDIS_OID_REQUEST structure contains a pointer to an NDIS_RECEIVE_QUEUE_PARAMETERS structure with a queue identifier of type NDIS_RECEIVE_QUEUE_ID. After a successful return from the OID method request, the InformationBuffer member of the NDIS_OID_REQUEST structure contains a pointer to an NDIS_RECEIVE_QUEUE_PARAMETERS structure.

Overlying drivers issue OID set requests of OID_RECEIVE_FILTER_QUEUE_PARAMETERS to change the current configuration parameters of a queue. The overlying driver provides a pointer to an NDIS_RECEIVE_QUEUE_PARAMETERS structure in the InformationBuffer member of the NDIS_OID_REQUEST structure.

Remarks

Overlying drivers issue OID set requests of OID_RECEIVE_FILTER_QUEUE_PARAMETERS to change the parameters of one or more receive queues. The OID set request is optional for NDIS 6.20 and later miniport drivers. However, the OID request is mandatory for miniport drivers that support the virtual machine queue (VMQ) interface.

Note  Only the overlying driver that allocated the queue can change the configuration parameters by issuing OID set requests of OID_RECEIVE_FILTER_QUEUE_PARAMETERS.

The overlying driver obtained the queue identifier input value from an earlier OID_RECEIVE_FILTER_ALLOCATE_QUEUE method OID request.

After the overlying driver allocates a queue, it can change the configuration parameters that have a corresponding change flag (NDIS_RECEIVE_QUEUE_PARAMETER_Xxx_CHANGED) in the Flags member of the NDIS_RECEIVE_QUEUE_PARAMETERS structure. However, after the queue has been allocated, the overlying driver cannot change the configuration parameters that do not have a corresponding change flag.

Return Status Codes

NDIS handles the OID method request of OID_RECEIVE_FILTER_QUEUE_PARAMETERS for miniport drivers, and returns one of the following status codes.

Status code Description

NDIS_STATUS_SUCCESS

The request completed successfully.

NDIS_STATUS_PENDING

The request is pending completion. NDIS will pass the final status code and results to the OID request completion handler of the caller after the request has completed.

NDIS_STATUS_INVALID_LENGTH

The information buffer was too short. NDIS set the DATA.METHOD_INFORMATION.BytesNeeded member in the NDIS_OID_REQUEST structure to the minimum buffer size that is required.

NDIS_STATUS_INVALID_PARAMETER

The request failed because it tried to enable a capability that the underlying network adapter does not support.

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

NDIS_OID_REQUEST

NDIS_RECEIVE_QUEUE_PARAMETERS

OID_RECEIVE_FILTER_ALLOCATE_QUEUE

OID_RECEIVE_FILTER_QUEUE_PARAMETERS