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 拡張可能スイッチの送受信フラグを参照してください。
戻り値
何一つ
備考
フィルター ドライバーは、NDISFSendNetBufferListsComplete 関数 を呼び出して、NDIS がドライバーに対して行った送信要求を完了します。FilterSendNetBufferLists 関数を します。 フィルター ドライバーは、完了した送信要求に関連付けられている NET_BUFFER_LIST 構造体のリンクされた一覧を指定します。 送信要求の状態が保留中の間、フィルター ドライバーは、NET_BUFFER_LIST 構造体と、NET_BUFFER_LIST 構造体に関連付けられているすべてのリソースの所有権を保持します。
フィルター ドライバーは、任意の順序で要求の送信を完了できます。 たとえば、フィルター ドライバーは、複数の FilterSendNetBufferLists 呼び出しの NET_BUFFER_LIST 構造リストを連結したり、FilterSendNetBufferLists 呼び出しからリストを分割したりできます。 ただし、フィルター ドライバーは、NET_BUFFER_LIST 構造体に関連付けられている NET_BUFFER 構造体の一覧を変更することはできません。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | NDIS 6.0 以降でサポートされています。 |
ターゲット プラットフォーム の | デスクトップ |
ヘッダー | ndis.h (Ndis.h を含む) |
ライブラリ | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
DDI コンプライアンス規則 を する | Irql_Filter_Driver_Function(ndis) |