次の方法で共有


FwpsAllocateNetBufferAndNetBufferList0 関数 (fwpsk.h)

FwpsAllocateNetBufferAndNetBufferList0 関数は、新しい NET_BUFFER_LIST 構造体を割り当てます。

注意FwpsAllocateNetBufferAndNetBufferList0 は、FwpsAllocateNetBufferAndNetBufferList の特定のバージョンです。 詳細については、「WFP Version-Independent 名の と Windows の特定のバージョンを対象とする」を参照してください。
 

構文

NTSTATUS FwpsAllocateNetBufferAndNetBufferList0(
  [in]           NDIS_HANDLE     poolHandle,
  [in]           USHORT          contextSize,
  [in]           USHORT          contextBackFill,
  [in, optional] MDL             *mdlChain,
  [in]           ULONG           dataOffset,
  [in]           SIZE_T          dataLength,
  [out]          NET_BUFFER_LIST **netBufferList
);

パラメーター

[in] poolHandle

NdisAllocateNetBufferListPool 関数の以前の呼び出しから取得された NET_BUFFER_LIST プール ハンドル。

[in] contextSize

引き出しドライバー用に予約する NET_BUFFER_LIST_CONTEXT 構造体で使用されるデータ領域のサイズ (バイト単位)。 このパラメーターの値は、MEMORY_ALLOCATION_ALIGNMENTによって定義された値の倍数である必要があります。

[in] contextBackFill

引き出しドライバーに必要な未使用のデータ領域 (バックフィル領域) のサイズ (バイト単位)。 FwpsAllocateNetBufferAndNetBufferList0 関数は、ContextSize パラメーターで指定された値にこの値を追加し、追加の領域を割り当てます。 このパラメーターの値は、MEMORY_ALLOCATION_ALIGNMENTによって定義された値の倍数である必要があります。

[in, optional] mdlChain

事前に割り当てられたNET_BUFFER構造体を初期化するために使用される MDL チェーンへのポインター。 このパラメーターは省略可能であり、NULL できます。

[in] dataOffset

バッファーの先頭から MDL チェーン内の使用されるデータ空間の先頭までの初期オフセット (バイト単位)。 このオフセットの前のデータ領域は、未使用のデータ領域です。 したがって、この値は、MDL チェーン内の使用可能なバックフィル領域の初期量も表します。

[in] dataLength

MDL チェーンで使用されるデータ領域の長さ (バイト単位)。

[out] netBufferList

新しい NET_BUFFER_LIST 構造体へのポインターを受け取る変数へのポインター。

戻り値

FwpsAllocateNetBufferAndNetBufferList0 関数は、次のいずれかの NTSTATUS コードを返します。

リターン コード 形容
STATUS_SUCCESS
新しい NET_BUFFER_LIST 構造体が正常に割り当てられました。
その他の状態コードの
エラーが発生しました。

備考

コールアウト ドライバーは、FwpsAllocateNetBufferAndNetBufferList0 関数を呼び出して、新しい NET_BUFFER_LIST 構造体を割り当てます。

この関数は、〘〘NdisAllocateNetBufferAndNetBufferList 関数 しますが、WFP パケット インジェクション関数で使用するために特化されています。

新しい NET_BUFFER_LIST 構造体によって記述されたデータがネットワーク スタックに正常に挿入された後、コールアウト ドライバーは、新しい NET_BUFFER_LIST 構造体を解放します。FwpsFreeNetBufferList0 関数を します。

必要条件

要件 価値
サポートされる最小クライアント Windows Vista 以降で使用できます。
ターゲット プラットフォーム 万国
ヘッダー fwpsk.h (Fwpsk.h を含む)
ライブラリ Fwpkclnt.lib
IRQL <= DISPATCH_LEVEL

関連項目

FwpsFreeNetBufferList0

NET_BUFFER_LIST

NET_BUFFER_LIST_CONTEXT

NdisAllocateNetBufferAndNetBufferList NdisAllocateNetBufferListPool をする

パケット インジェクション関数の