FWPS_CLASSIFY_OUT0 結構 (fwpstypes.h)

FWPS_CLASSIFY_OUT0 結構會定義傳回給圖說文字分類圖說函式之呼叫端的數據。

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

語法

typedef struct FWPS_CLASSIFY_OUT0_ {
  FWP_ACTION_TYPE actionType;
  UINT64          outContext;
  UINT64          filterId;
  UINT32          rights;
  UINT32          flags;
  UINT32          reserved;
} FWPS_CLASSIFY_OUT0;

成員

actionType

FWP_ACTION_TYPE值,指定要依照圖說文字驅動程序分類Fn 圖說文字函式所決定的建議動作。 圖說文字驅動程式會將此變數設定為下列其中一個值:

FWP_ACTION_BLOCK

禁止傳輸或接收數據。

FWP_ACTION_CONTINUE

傳遞決策來封鎖或允許數據傳輸或接收至篩選引擎中的下一個篩選。

FWP_ACTION_NONE

對數據執行任何動作。

FWP_ACTION_NONE_NO_MATCH

不對數據執行任何動作,因為它不符合列舉的篩選數據類型。

FWP_ACTION_PERMIT

允許傳輸或接收數據。

此成員的寫入存取權是由許可權成員中的FWPS_RIGHT_ACTION_WRITE旗標所控制。 如果 已設定FWPS_RIGHT_ACTION_WRITE 旗標,圖說文字驅動程式可以將上述任何值寫入這個成員。 如果未設定 FWPS_RIGHT_ACTION_WRITE 旗標,則圖說文字驅動程式不應該寫入此成員,除非該驅動程式已保留先前由篩選引擎中較高權數篩選條件傳回 的FWP_ACTION_PERMIT 動作。 在這種情況下,圖說文字驅動程式會將此成員設定為 FWP_ACTION_BLOCK

outContext

保留供系統使用。 圖說文字驅動程式不得使用此成員。

filterId

保留供系統使用。 圖說文字驅動程式不得使用此成員。

rights

旗標,控制此結構中其他成員的寫入許可權。 可能的旗標包括:

FWPS_RIGHT_ACTION_WRITE

如果已設定此旗標,圖說文字驅動程式可以寫入這個結構的 actionType 成員。 如果未設定此旗標,則圖說文字驅動程式只能在篩選引擎中較高的權數篩選條件傳回的FWP_ACTION_PERMIT動作時寫入此結構的 actionType 成員。

flags

影響對數據採取之動作的旗標。 可能的旗標包括:

FWPS_CLASSIFY_OUT_FLAG_ABSORB

封鎖的數據會以無訊息方式卸除,而不需要任何事件記錄或稽核。 這通常用於封包修改,其中原始封包要被吸收,而修改的封包則會進一步處理。

actionType 成員設定為 FWP_ACTION_BLOCK時,此旗標適用於下列圖層:

FWPS_LAYER_INBOUND_MAC_FRAME_NATIVE
FWPS_LAYER_OUTBOUND_MAC_FRAME_NATIVE
FWPS_LAYER_INBOUND_MAC_FRAME_ETHERNET
FWPS_LAYER_OUTBOUND_MAC_FRAME_ETHERNET
FWPS_LAYER_INGRESS_VSWITCH_ETHERNET
FWPS_LAYER_EGRESS_VSWITCH_ETHERNET
FWPS_LAYER_INBOUND_IPPACKET_V4
FWPS_LAYER_INBOUND_IPPACKET_V6
FWPS_LAYER_OUTBOUND_IPPACKET_V4
FWPS_LAYER_OUTBOUND_IPPACKET_V6
FWPS_LAYER_INBOUND_TRANSPORT_V4
FWPS_LAYER_INBOUND_TRANSPORT_V6
FWPS_LAYER_OUTBOUND_TRANSPORT_V4
FWPS_LAYER_OUTBOUND_TRANSPORT_V6
FWPS_LAYER_INBOUND_ICMP_ERROR_V4
FWPS_LAYER_INBOUND_ICMP_ERROR_V6
FWPS_LAYER_OUTBOUND_ICMP_ERROR_V4
FWPS_LAYER_OUTBOUND_ICMP_ERROR_V6
FWPS_LAYER_DATAGRAM_DATA_V4
FWPS_LAYER_DATAGRAM_DATA_V6
FWPS_LAYER_STREAM_PACKET_V4
FWPS_LAYER_STREAM_PACKET_V6
FWPS_LAYER_ALE_AUTH_RECV_ACCEPT_V4
FWPS_LAYER_ALE_AUTH_RECV_ACCEPT_V6
FWPS_LAYER_ALE_AUTH_CONNECT_V4
FWPS_LAYER_ALE_AUTH_CONNECT_V6

您也可以在FWPS_LAYER_ALE_FLOW_ESTABLISHED_V4層和FWPS_LAYER_ALE_FLOW_ESTABLISHED_V6層設定此旗標。 但不建議這麼做,因為這些層是為了將內容與流程產生關聯。

如果未設定此旗標,封鎖動作將受限於一般事件記錄和稽核。

FWPS_CLASSIFY_OUT_FLAG_BUFFER_LIMIT_REACHED

當數據流數據的篩選引擎數據緩衝區已滿時,篩選引擎就會設定此旗標。 如果圖說文字的 classifyFn 圖說文字函式重複要求更多數據,請將FWPS_STREAM_CALLOUT_IO_PACKET0結構的 streamAction 成員設定為FWPS_STREAM_ACTION_NEED_MORE_DATA,直到達到緩衝區限制為止,就會發生此情況。 如果設定此旗標,圖說文字驅動程式的 classifyFn 圖說文字函式必須允許或封鎖所有數據流數據。

此旗標僅適用於數據流層。

FWPS_CLASSIFY_OUT_FLAG_NO_MORE_DATA

在數據流中斷連線之後,要求 Stream 數據。

reserved

保留供系統使用。 圖說文字驅動程式不得使用此成員。

備註

篩選引擎會將指標傳遞給圖說文字的分類Fn 圖說函式FWPS_CLASSIFY_OUT0結構。 圖說文字驅動程式會使用此結構將數據傳回給呼叫端。

規格需求

需求
最低支援的用戶端 從 Windows Vista 開始提供。
標頭 fwpstypes.h (包括 Fwpsk.h、Fwpmtypes.h、Fwpmk.h)

另請參閱

FWPS_STREAM_CALLOUT_IO_PACKET0

運行時間篩選層識別碼

classifyFn