OID_RECEIVE_FILTER_CURRENT_CAPABILITIES
基になるドライバーは、ネットワーク アダプターの現在有効な受信フィルター機能を取得するOID_RECEIVE_FILTER_CURRENT_CAPABILITIESの OID クエリ要求を発行します。
OID クエリ要求から正常に戻った後、NDIS_OID_REQUEST 構造体の InformationBuffer メンバーには、NDIS_RECEIVE_FILTER_CAPABILITIES 構造体へのポインターが含まれます。
備考
NDIS 受信フィルターは、次の NDIS インターフェイスで使用されます。
NDIS パケット結合。 このインターフェイスで受信フィルターを使用する方法の詳細については、「パケット結合受信フィルターの管理を参照してください。
シングル ルート I/O 仮想化 (SR-IOV)。 このインターフェイスで受信フィルターを使用する方法の詳細については、「仮想ポート で受信フィルターを設定するを参照してください。
仮想マシン キュー (VMQ) をします。 このインターフェイスで受信フィルターを使用する方法の詳細については、「VMQ フィルターの設定とクリア」を参照してください。
NDIS 6.20 以降では、ミニポート ドライバーは、その ミニポートInitializeEx 関数が呼び出されたときに、ネットワーク アダプターの現在有効な受信フィルターハードウェア機能を登録します。 ミニポート ドライバーは、次の手順に従ってこれらの機能を登録します。
ドライバーは、現在有効になっている受信フィルターハードウェア機能を使用して、NDIS_RECEIVE_FILTER_CAPABILITIES 構造体を初期化します。
ドライバーは、NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES 構造体を初期化し、CurrentReceiveFilterCapabilities メンバーを NDIS_RECEIVE_FILTER_CAPABILITIES 構造体へのポインターに設定します。
ミニポート ドライバーは、NdisMSetMiniportAttributes 関数を呼び出し、ミニポートAttributes パラメーターを NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES 構造体へのポインターに設定します。
上にあるプロトコルドライバーとフィルター ドライバーは、OID_RECEIVE_FILTER_CURRENT_CAPABILITIESの OID クエリ要求を発行する必要はありません。 NDIS は、次の方法でこれらのドライバーに現在有効な受信フィルター機能を提供します。
NDIS は、バインド操作中に NDIS_BIND_PARAMETERS 構造体のメンバー ReceiveFilterCapabilities の上にあるプロトコル ドライバーに基になるネットワーク アダプターの現在有効な受信フィルター機能を提供します。
NDIS は、接続操作中に NDIS_FILTER_ATTACH_PARAMETERS 構造体のメンバー ReceiveFilterCapabilities の上にあるフィルター ドライバーに基になるネットワーク アダプターの現在有効な受信フィルター機能を提供します。
戻り値の状態コード
NDIS は、ミニポート ドライバーのOID_RECEIVE_FILTER_CURRENT_CAPABILITIESの OID クエリ要求を処理し、次のいずれかの状態コードを返します。
NDIS_STATUS_SUCCESS
要求が正常に完了しました。
InformationBuffer は、NDIS_RECEIVE_FILTER_CAPABILITIES 構造体を指します。
NDIS_STATUS_PENDING
要求の完了が保留中です。 NDIS は、要求が完了した後、呼び出し元の OID 要求完了ハンドラーに最終的な状態コードと結果を渡します。
NDIS_STATUS_INVALID_LENGTH
情報バッファーが短すぎます。 NDIS は、データを設定します。QUERY_INFORMATION。BytesNeededNDIS_OID_REQUEST 構造体のメンバーを、必要な最小バッファー サイズに設定します。
NDIS_STATUS_NOT_SUPPORTED
ネットワーク アダプターは、受信フィルター処理をサポートしていません。
NDIS_STATUS_FAILURE
その他の理由で要求が失敗しました。
必要条件
バージョン |
NDIS 6.20 以降でサポートされています。 |
ヘッダ |
Ntddndis.h (Ndis.h を含む) |