共用方式為


OID_RECEIVE_FILTER_ENUM_FILTERS

過度配置驅動程式發出 OID_RECEIVE_FILTER_ENUM_FILTERS 的 OID 方法要求,以取得網路介面卡上設定的所有篩選清單。

NDIS_OID_REQUEST結構的InformationBuffer成員包含NDIS_RECEIVE_FILTER_INFO_ARRAY結構的指標。

從 OID 方法要求成功傳回之後,NDIS_OID_REQUEST結構的InformationBuffer成員會包含緩衝區的指標。 此緩衝區的格式設定為包含下列內容:

備註

NDIS 接收篩選準則用於下列 NDIS 介面:

過度處理驅動程式或應用程式會發出OID_RECEIVE_FILTER_ENUM_FILTERS的 OID 方法要求,以列舉網路介面卡上設定的接收篩選。 這包括在 SR-IOV 虛擬埠上設定的接收篩選, (VPort) 或 VMQ 接收佇列。

NDIS 封包聯合介面的其他指導方針

從Windows Server 2012開始,NDIS 封包聯合僅支援網路介面卡的預設接收佇列。

若要列舉封包聯合接收篩選準則,過度配置驅動程式必須將NDIS_RECEIVE_FILTER_INFO_ARRAY結構的QueueId成員設定為NDIS_DEFAULT_RECEIVE_QUEUE_ID。

SR-IOV 介面的其他指導方針

從 Windows Server 2012 開始,SR-IOV 介面僅支援虛擬埠的預設接收佇列 (VPort) 。

若要列舉 VPort 接收篩選準則,過度配置驅動程式必須將NDIS_RECEIVE_FILTER_INFO_ARRAY結構的QueueId成員設定為NDIS_DEFAULT_RECEIVE_QUEUE_ID。

VMQ 介面的其他指導方針

過度配置驅動程式可能會發出 OID_RECEIVE_FILTER_ENUM_FILTERS 的 OID 方法要求,以列舉 VMQ 接收佇列上設定的接收篩選。 當過度配置驅動程式初始化 NDIS_RECEIVE_FILTER_INFO_ARRAY 結構時,它會將 QueueId 成員設定為下列其中一個值:

  • 非預設接收佇列的佇列識別碼值。 過度處理驅動程式已從先前的 OID 方法要求取得佇列識別碼輸入值 OID_RECEIVE_FILTER_ALLOCATE_QUEUE或 OID_RECEIVE_FILTER_ENUM_QUEUES的 OID 查詢要求。

  • NDIS_DEFAULT_RECEIVE_QUEUE_ID的佇列識別碼值,指定預設接收佇列。

傳回狀態碼

NDIS 會處理迷你埠驅動程式OID_RECEIVE_FILTER_ENUM_FILTERS的 OID 方法要求,並傳回下列其中一個狀態碼:

NDIS_STATUS_SUCCESS
要求已順利完成。 InformationBuffer指向NDIS_RECEIVE_FILTER_INFO_ARRAY結構。

NDIS_STATUS_PENDING
要求正在擱置完成。 NDIS 會在要求完成之後,將最終狀態代碼和結果傳遞至呼叫端的 OID 要求完成處理常式。

NDIS_STATUS_INVALID_LENGTH
資訊緩衝區太短。 NDIS 會設定DATA。QUERY_INFORMATION。NDIS_OID_REQUEST 結構中的 BytesNeeded成員,以達到所需的最小緩衝區大小。

NDIS_STATUS_FAILURE
要求因其他原因而失敗。

規格需求

版本

NDIS 6.20 和更新版本支援。

標頭

Ntddndis.h (包括 Ndis.h)

另請參閱

NDIS_OID_REQUEST

NDIS_RECEIVE_FILTER_INFO

NDIS_RECEIVE_FILTER_INFO_ARRAY

OID_RECEIVE_FILTER_ALLOCATE_QUEUE

OID_RECEIVE_FILTER_ENUM_QUEUES

OID_RECEIVE_FILTER_SET_FILTER