共用方式為


FwpsCloneStreamData0 函式 (fwpsk.h)

FwpsCloneStreamData0 函式會配置現有FWPS_STREAM_DATA0數據流的複本。

注意FwpsCloneStreamData0 是特定版本的 FwpsCloneStreamData。 如需詳細資訊 ,請參閱 Version-Independent 名稱和以特定 Windows 版本為目標
 

語法

NTSTATUS FwpsCloneStreamData0(
  [in, out]      FWPS_STREAM_DATA0 *calloutStreamData,
  [in, optional] NDIS_HANDLE       netBufferListPoolHandle,
  [in, optional] NDIS_HANDLE       netBufferPoolHandle,
  [in]           ULONG             allocateCloneFlags,
  [out]          NET_BUFFER_LIST   **netBufferListChain
);

參數

[in, out] calloutStreamData

要複製其NET_BUFFER_LIST結構之原始FWPS_STREAM_DATA0結構的指標。

[in, optional] netBufferListPoolHandle

從先前呼叫 NdisAllocateNetBufferListPool 函式取得的NET_BUFFER_LIST集區句柄。 這個參數是選擇性的,而且可以是 NULL

[in, optional] netBufferPoolHandle

從先前呼叫 取得 的NET_BUFFER 集區句柄 NdisAllocateNetBufferPool 函式。 這個參數是選擇性的,而且可以是 NULL

[in] allocateCloneFlags

目前沒有為此函式定義的旗標。 註標驅動程式應該將此參數設定為零。

[out] netBufferListChain

位置的指標,接收描述所有複製數據流數據 之NET_BUFFER_LIST 結構的鏈結指標。

傳回值

FwpsCloneStreamData0 函式會傳回下列其中一個 NTSTATUS 代碼。

傳回碼 Description
STATUS_SUCCESS
已成功配置複製 FWPS_STREAM_DATA0 結構。
其他狀態代碼
發生錯誤。

備註

這個複製的數據流數據可由圖說文字驅動程式插入 TCP/IP 網路堆疊稍後。

FwpsCloneStreamData0 函式會複製現有FWPS_STREAM_DATA0數據流中包含的整個NET_BUFFER_LIST結構鏈。 函式會修剪未使用的數據,讓圖說驅動程式可以成功將複製的鏈結傳遞至 FwpsStreamInjectAsync0 函式。

成功將複製NET_BUFFER_LIST結構鏈結中的數據流數據插入網路堆疊之後,系統會針對每個複製NET_BUFFER_LIST結構呼叫 completionFn 圖說文字函式,而且圖說文字應該呼叫 FwpsFreeCloneNetBufferList0 以釋放複製NET_BUFFER_LIST結構。

如果要捨棄複製的數據流數據,則圖說文字應該呼叫 FwpsDiscardClonedStreamData0 函式,而不需重新執行。

規格需求

需求
最低支援的用戶端 從 Windows Vista 開始提供。
目標平台 Universal
標頭 fwpsk.h (包含 Fwpsk.h)
程式庫 Fwpkclnt.lib
IRQL <= DISPATCH_LEVEL

另請參閱

FWPS_STREAM_DATA0

FwpsDiscardClonedStreamData0

FwpsFreeCloneNetBufferList0

FwpsStreamInjectAsync0

NET_BUFFER

NET_BUFFER_LIST