FWPS_CALLOUT_CLASSIFY_FN2回呼函式 (fwpsk.h)
每當圖說文字要處理數據時,篩選引擎就會呼叫圖說文字的 classifyFn2 圖說文字函式。
語法
FWPS_CALLOUT_CLASSIFY_FN2 FwpsCalloutClassifyFn2;
void FwpsCalloutClassifyFn2(
[in] const FWPS_INCOMING_VALUES0 *inFixedValues,
[in] const FWPS_INCOMING_METADATA_VALUES0 *inMetaValues,
[in, out, optional] void *layerData,
[in, optional] const void *classifyContext,
[in] const FWPS_FILTER2 *filter,
[in] UINT64 flowContext,
[in, out] FWPS_CLASSIFY_OUT0 *classifyOut
)
{...}
參數
[in] inFixedValues
FWPS_INCOMING_VALUES0 結構的指標。 此結構包含所篩選圖層中每個數據欄位的值。
[in] inMetaValues
的指標 FWPS_INCOMING_METADATA_VALUES0 結構。 此結構包含所篩選層中每個元數據欄位的值。
[in, out, optional] layerData
結構的指標,描述所篩選層中的原始數據。 此參數可能是 NULL,視所篩選的圖層和 呼叫 classifyFn2 圖說文字函式的條件而定。 對於數據流層,此參數會指向 FWPS_STREAM_CALLOUT_IO_PACKET0 結構。 對於所有其他圖層,如果不是 NULL,此參數會指向 NET_BUFFER_LIST 結構。
[in, optional] classifyContext
篩選引擎與圖說文字驅動程序相關聯之內容數據的指標。
[in] filter
FWPS_FILTER2 結構的指標。 這個結構描述指定篩選動作圖說文字的篩選條件。
[in] flowContext
UINT64 型別變數,其中包含與數據流相關聯的內容。 如果沒有與數據流相關聯的內容,則此參數為零。 如果在不支持數據流的篩選層上將圖說文字新增至篩選引擎, 則 classifyFn2 圖說文字函式應該忽略此參數。
[in, out] classifyOut
FWPS_CLASSIFY_OUT0 結構的指標,可接收 classifyFn2 圖說文字函式傳回給呼叫端的任何數據。
傳回值
無
備註
圖說文字驅動程式會藉由呼叫 FwpsCalloutRegister2 函式,向篩選引擎註冊圖說文字函式。
篩選引擎會呼叫圖說文字的 classifyFn2 圖說文字函式,並在篩選引擎中指定篩選動作圖說文字的篩選條件為 true 時,處理數據。
圖說文字的 classifyFn2 圖說文字函式應該在下列任何情況中清除FWPS_CLASSIFY_OUT0結構 許可權 成員中的 FWPS_RIGHT_ACTION_WRITE 旗標:
- 當 classifyFn2 圖說文字函式將FWPS_CLASSIFY_OUT0結構的 actionType 成員設定為 FWP_ACTION_BLOCK 。
- 當 classifyFn2 圖說文字函式將 FWPS_CLASSIFY_OUT0 結構的 actionType 成員設定為 FWP_ACTION_PERMIT,而 FWPS_FILTER_FLAG_CLEAR_ACTION_RIGHT 旗標是在 FWPS_FILTER2 結構的 Flags 成員中設定。
-
當圖說文字指出其想要藉由在呼叫 中將 intendToModify 參數設定為TRUE來修改複製 net 緩衝區清單時 FwpsReferenceNetBufferList0 函式。
此函式基本上與舊版 分類Fn1 相同。 不過,篩選參數會指向更新FWPS_FILTER2結構,而 layerData 參數是選擇性的。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 從 Windows 8 開始提供。 |
目標平台 | Windows |
標頭 | fwpsk.h (包含 Fwpsk.h) |
IRQL | <= DISPATCH_LEVEL |