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_RECEIVE_FILTER_INFO_ARRAY結構,指定目前在迷你埠驅動程式上設定的接收篩選清單。
NDIS_RECEIVE_FILTER_INFO結構的陣列。 每個結構都會指定目前在迷你埠驅動程式上設定之接收篩選的參數。
備註
NDIS 接收篩選準則用於下列 NDIS 介面:
NDIS 封包聯合。 如需有關如何在此介面中使用接收篩選的詳細資訊,請參閱 管理封包聯合接收篩選。
單一根目錄 I/O 虛擬化 (SR-IOV) 。 如需如何在此介面中使用接收篩選的詳細資訊,請參閱 在虛擬埠上設定接收篩選。
虛擬機器佇列 (VMQ)。 如需有關如何在此介面中使用接收篩選的詳細資訊,請參閱 設定和清除 VMQ 篩選。
過度處理驅動程式或應用程式會發出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_RECEIVE_FILTER_INFO_ARRAY
OID_RECEIVE_FILTER_ALLOCATE_QUEUE