NdisAllocateReassembledNetBufferList 関数 (ndis/nblapi.h)
NdisAllocateReassembledNetBufferList 関数を呼び出して、フラグメント化された NET_BUFFER_LIST 構造体を再アセンブルします。
構文
NDIS_EXPORTED_ROUTINE NET_BUFFER_LIST * NdisAllocateReassembledNetBufferList(
NET_BUFFER_LIST *FragmentNetBufferList,
[in, optional] NDIS_HANDLE NetBufferAndNetBufferListPoolHandle,
[in] ULONG StartOffset,
[in] ULONG DataOffsetDelta,
[in] ULONG DataBackFill,
[in] ULONG AllocateReassembleFlags
);
パラメーター
FragmentNetBufferList
再アセンブルするNET_BUFFER_LIST構造体へのポインター。
[in, optional] NetBufferAndNetBufferListPoolHandle
から以前に返されたNET_BUFFER_LIST構造体プール ハンドルNdisAllocateNetBufferListPool 関数を します。 呼び出し元が NdisAllocateNetBufferListPool に渡 した NET_BUFFER_LIST_POOL_PARAMETERS 構造体の fAllocateNetBuffer メンバーは、TRUE に設定されている必要があり、DataSize メンバーは 0 に設定されている必要があります。 このパラメーターが NULL 場合、NDIS は内部プールを使用します。
[in] StartOffset
各ソース NET_BUFFER 構造体の先頭でスキップするデータの量。 この量は、NET_BUFFER構造体の DataOffset メンバーで指定された値に加えて行われます。
[in] DataOffsetDelta
再構築されたNET_BUFFER構造体に追加 使用されたデータ領域のバイト数。
[in] DataBackFill
未使用のデータ領域 (バックフィル領域) の割り当てが必要な場合、このパラメーターは、割り当てる DataOffsetDelta に加えて、未使用のデータ領域 バイト数を指定します。
[in] AllocateReassembleFlags
OR 操作と組み合わせることができる NDIS フラグ。 このパラメーターを 0 に設定します。 現在、この関数に対して定義されているフラグはありません。
戻り値
再アセンブル操作が成功した場合、NdisAllocateReassembledNetBufferList は再構築されたNET_BUFFER_LIST構造体を返します。 操作が失敗した場合は、null 返されます。
備考
NdisAllocateReassembledNetBufferList 、1 つの NET_BUFFER 構造体と 1 つの MDL チェーンを含む新しい NET_BUFFER_LIST 構造体を割り当て、初期化、および返します。 新しいNET_BUFFER_LIST構造体は、ドライバーが FragmentedNetBufferList で渡した、フラグメント化されたソース NET_BUFFER_LIST構造体と同じデータ記述します。 フラグメント化された各NET_BUFFER構造体の StartOffset で指定されたバイト数をスキップした後、NDIS は各フラグメント化されたNET_BUFFER構造体の残りのデータを 1 つの再構成されたNET_BUFFER構造体に連結します。 再構築されたNET_BUFFER_LIST構造体に初期構造が含まれていない NET_BUFFER_LIST_CONTEXT 構造体。
を呼び出します。NdisFreeReassembledNetBufferList 関数を して、再構成されたNET_BUFFER_LIST構造体と、関連付けられているすべてのNET_BUFFER構造体と MDL チェーンを解放します。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | NDIS 6.0 以降でサポートされています。 |
ターゲット プラットフォーム の | 万国 |
ヘッダー | ndis/nblapi.h (ndis.h を含む) |
ライブラリ | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
DDI コンプライアンス規則 を する | Irql_NetBuffer_Function(ndis), NdisAllocateReassembledNetBufferList(ndis), NdisAllocateReassembledNetBufferList_InitFail(ndis) |
関連項目
NET_BUFFER_LIST_POOL_PARAMETERS
NdisAllocateNetBufferListPool NdisFreeReassembledNetBufferList