次の方法で共有


NdisFSendNetBufferListsComplete 関数 (ndis.h)

フィルター ドライバーは NdisFSendNetBufferListsComplete 関数を呼び出して NET_BUFFER_LIST構造体のリンクされたリストを基になるドライバーに返し、送信要求の最終的な状態を返します。

構文

void NdisFSendNetBufferListsComplete(
  [in] NDIS_HANDLE      NdisFilterHandle,
       PNET_BUFFER_LIST NetBufferList,
  [in] ULONG            SendCompleteFlags
);

パラメーター

[in] NdisFilterHandle

このフィルター モジュールを識別する NDIS ハンドル。 NDIS は FilterAttach 関数の呼び出しでフィルター ドライバーにハンドルを渡しました。

NetBufferList

NET_BUFFER_LIST構造体のリンクされたリストへのポインター。 フィルター ドライバーは、 への以前の呼び出しで NET_BUFFER_LIST 構造体を受け取った FilterSendNetBufferLists 関数。

[in] SendCompleteFlags

OR 操作と組み合わせることができる NDIS フラグ。 すべてのフラグをクリアするには、このメンバーを 0 に設定します。 この関数は、次のフラグをサポートしています。

NDIS_SEND_COMPLETE_FLAGS_DISPATCH_LEVEL

現在の IRQL がDISPATCH_LEVELされることを指定します。 このフラグの詳細については、「 ディスパッチ IRQL 追跡」を参照してください。

NDIS_SEND_COMPLETE_FLAGS_SWITCH_SINGLE_SOURCE

このフラグが設定されている場合、 NET_BUFFER_LIST 構造のリンクされたリスト内のすべてのパケットは、同じ Hyper-V 拡張可能スイッチのソース ポートから送信されます。

詳細については、「 Hyper-V 拡張可能スイッチの送受信フラグ」を参照してください。

メモNET_BUFFER_LIST構造体のリンクされたリスト内の各パケットが同じソース ポートを使用する場合、拡張機能は、要求の送信時に NdisFSendNetBufferListsSendFlags パラメーターに NDIS_SEND_FLAGS_SWITCH_SINGLE_SOURCE フラグを設定する必要があります。
 
メモ このフラグは、NDIS 6.30 以降で使用できます。
 

戻り値

なし

解説

フィルター ドライバーは NdisFSendNetBufferListsComplete 関数を呼び出して、NDIS がドライバーに対して行った送信要求を完了します FilterSendNetBufferLists 関数。 フィルター ドライバーは、完了した送信要求に関連付けられている NET_BUFFER_LIST 構造体のリンクされた一覧を指定します。 送信要求の状態が保留中の間、フィルター ドライバーは 、NET_BUFFER_LIST構造体と、NET_BUFFER_LIST 構造体に関連付けられているすべての リソースの所有権 を保持します。

フィルター ドライバーは、任意の順序で送信要求を完了できます。 たとえば、フィルター ドライバーは、複数の FilterSendNetBufferLists 呼び出しからNET_BUFFER_LIST構造リストを連結したり、FilterSendNetBufferLists 呼び出しからリストを分割したりできます。 ただし、フィルター ドライバーは、NET_BUFFER_LIST構造体に関連付けられている NET_BUFFER 構造体の一 覧を変更 することはできません。

メモ フィルター ドライバーは、生成された送信要求を追跡し、 を呼び出していないことを確認する必要があります。このような要求が完了した場合の NdisFSendNetBufferListsComplete 関数。
 

要件

要件
サポートされている最小のクライアント NDIS 6.0 以降でサポートされています。
対象プラットフォーム デスクトップ
Header ndis.h (Ndis.h を含む)
Library Ndis.lib
IRQL <= DISPATCH_LEVEL
DDI コンプライアンス規則 Irql_Filter_Driver_Function(ndis)

こちらもご覧ください

FilterAttach

FilterSendNetBufferLists

NET_BUFFER

NET_BUFFER_LIST