FwpsAllocateNetBufferAndNetBufferList0 函式 (fwpsk.h)
FwpsAllocateNetBufferAndNetBufferList0 函式會配置新的NET_BUFFER_LIST結構。
語法
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
MDL 鏈結的指標,用來初始化預先配置NET_BUFFER結構。 此參數是選擇性的,可以是 NULL。
[in] dataOffset
從緩衝區開頭到 MDL 鏈結中已使用資料空間的開頭的初始位移,以位元組為單位。 此位移前的數據空間是未使用的數據空間。 因此,這個值也代表 MDL 鏈結中可用回填空間的初始數量。
[in] dataLength
MDL 鏈結中已使用之數據空間的長度,以位元組為單位。
[out] netBufferList
接收新 NET_BUFFER_LIST 結構的指標的變數指標。
傳回值
FwpsAllocateNetBufferAndNetBufferList0 函式會傳回下列其中一個 NTSTATUS 代碼。
傳回碼 | Description |
---|---|
|
已成功配置新的 NET_BUFFER_LIST 結構。 |
|
發生錯誤。 |
備註
圖說文字驅動程式會呼叫 FwpsAllocateNetBufferAndNetBufferList0 函式來配置新的 NET_BUFFER_LIST 結構。
此函式是的包裝函式 NdisAllocateNetBufferAndNetBufferList 函式,但它是特製化的, 供其使用,供其使用。
在新 NET_BUFFER_LIST 結構所描述的數據成功插入網路堆疊之後,圖說文字驅動程式會藉由呼叫 來釋放新的 NET_BUFFER_LIST 結構 FwpsFreeNetBufferList0 函式。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 從 Windows Vista 開始提供。 |
目標平台 | Universal |
標頭 | fwpsk.h (包含 Fwpsk.h) |
程式庫 | Fwpkclnt.lib |
IRQL | <= DISPATCH_LEVEL |