次の方法で共有


OID_RECEIVE_FILTER_CLEAR_FILTER

基になるドライバーは、ネットワーク アダプターの受信フィルターをクリアするOID_RECEIVE_FILTER_CLEAR_FILTERの OID セット要求を発行します。

NDIS_OID_REQUEST 構造体の InformationBuffer メンバーには、NDIS_RECEIVE_FILTER_CLEAR_PARAMETERS 構造体へのポインターが含まれています。

備考

NDIS 受信フィルターは、次の NDIS インターフェイスで使用されます。

NDIS パケット結合、SR-IOV、または VMQ インターフェイスをサポートするミニポート ドライバーには、OID_RECEIVE_FILTER_CLEAR_FILTERの OID セット要求が必須です。

上にあるドライバー (NDIS プロトコルやフィルター ドライバーなど) は、OID_RECEIVE_FILTER_CLEAR_FILTERセット要求を使用して、以前に設定されたフィルターをクリアします。 受信フィルターを設定したドライバーのみがクリアできます。

上にあるドライバーは、NDIS_RECEIVE_FILTER_CLEAR_PARAMETERS 構造体の FilterId メンバーをフィルターの識別子に設定することで、受信フィルターをクリアします。 ドライバーは、OID_RECEIVE_FILTER_SET_FILTERの以前の OID メソッド要求からフィルター識別子を取得しました。

NDIS パケット結合の追加手順

次のポイントは、NDIS パケットの結合をサポートするミニポートおよび上にあるドライバーに適用されます。

  • 基になるドライバーは、ドライバーのバインドを解除またはデタッチする前に、ミニポート ドライバーに設定されているすべての受信フィルターをクリアする必要があります。

SR-IOV インターフェイスの追加ガイドライン

次の点は、SR-IOV インターフェイスをサポートするミニポート ドライバーと基になるドライバーに適用されます。

  • 上にあるドライバーは、VPort を解放する前に、SR-IOV VPort に設定されているすべてのフィルターをクリアする必要があります。 また、上にあるドライバーは、ネットワーク アダプターへのバインドを閉じる前に、既定の VPort に設定されているすべてのフィルターをクリアする必要があります。

  • ミニポート ドライバーは、VPort の最後のフィルターをクリアするOID_RECEIVE_FILTER_CLEAR_FILTERの OID 要求を完了している場合は、既定以外の VPort 上のパケットを示す必要があります。

    ミニポート ドライバーは、VPort を解放する OID_NIC_SWITCH_DELETE_VPORT の OID 要求を完了した場合、既定以外の VPort 上のパケットも示す必要があります。

VMQ インターフェイスの追加ガイドライン

次の点は、VMQ インターフェイスをサポートするミニポート ドライバーと基になるドライバーに適用されます。

  • 上にあるドライバーは、VMQ 受信キューに設定されているすべてのフィルターをクリアしてから、キューを解放する必要があります。 また、上にあるドライバーは、ネットワーク アダプターへのバインドを閉じる前に、既定またはドロップ キューに設定されているすべてのフィルターをクリアする必要があります。

  • ミニポート ドライバーは、受信キューの最後のフィルターをクリアするOID_RECEIVE_FILTER_CLEAR_FILTERの OID 要求を完了している場合は、受信キューのパケットを示す必要があります。

    ミニポート ドライバーは、受信キューを解放する OID_RECEIVE_FILTER_FREE_QUEUE の OID 要求を完了した場合、受信キューのパケットも示す必要があります。

戻り値の状態コード

ミニポート ドライバーの ミニポートOidRequest 関数は、この要求に対して次のいずれかの値を返します。

用語 形容

NDIS_STATUS_SUCCESS

ミニポート ドライバーが要求を正常に完了しました。

NDIS_STATUS_PENDING

ミニポート ドライバーは、非同期的に要求を完了します。 ミニポート ドライバーは、すべての処理を完了した後、NdisMOidRequestComplete 関数を呼び出して要求を成功させる必要があります、状態 パラメーターの NDIS_STATUS_SUCCESS を渡します。

NDIS_STATUS_NOT_ACCEPTED

ミニポート アダプターが突然削除されました。

NDIS は、この要求の次のいずれかの状態コードを返します。

NDIS_STATUS_SUCCESS
指定したフィルターが正常にクリアされました。

NDIS_STATUS_PENDING
要求の完了が保留中です。 NDIS は、要求が完了した後、呼び出し元の OID 要求完了ハンドラーに最終的な状態コードと結果を渡します。

NDIS_STATUS_FILE_NOT_FOUND
フィルター識別子が無効です。

NDIS_STATUS_INVALID_LENGTH
情報バッファーが小さすぎます。 NDIS は、データを設定します。SET_INFORMATION。BytesNeededNDIS_OID_REQUEST 構造体のメンバーを、必要な最小バッファー サイズに設定します。

必要条件

バージョン

NDIS 6.20 以降でサポートされています。

ヘッダ

Ntddndis.h (Ndis.h を含む)

関連項目

NDIS_OID_REQUEST

NDIS_RECEIVE_FILTER_CLEAR_PARAMETERS

OID_NIC_SWITCH_DELETE_VPORT

OID_RECEIVE_FILTER_FREE_QUEUE

OID_RECEIVE_FILTER_SET_FILTER