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 以降でサポートされています。 |
対象プラットフォーム | デスクトップ |
Header | ndis.h (Ndis.h を含む) |
Library | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
DDI コンプライアンス規則 | Irql_Filter_Driver_Function(ndis) |