FWPS_CLASSIFY_OUT0-Struktur (fwpstypes.h)
Die FWPS_CLASSIFY_OUT0-Struktur definiert die Daten, die an den Aufrufer der Legendenfunktion klassifizierenFn zurückgegeben werden.
Syntax
typedef struct FWPS_CLASSIFY_OUT0_ {
FWP_ACTION_TYPE actionType;
UINT64 outContext;
UINT64 filterId;
UINT32 rights;
UINT32 flags;
UINT32 reserved;
} FWPS_CLASSIFY_OUT0;
Member
actionType
Ein FWP_ACTION_TYPE Wert, der die vorgeschlagene Aktion angibt, die ausgeführt werden soll, wie durch die Legendenfunktion klassifizierenFn des Legendentreibers bestimmt. Ein Legendentreiber legt diese Variable auf einen der folgenden Werte fest:
FWP_ACTION_BLOCK
Blockieren sie die Übertragung oder den Empfang der Daten.
FWP_ACTION_CONTINUE
Übergeben Sie die Entscheidung, die Übertragung oder den Empfang der Daten an den nächsten Filter in der Filter-Engine zu blockieren oder zuzulassen.
FWP_ACTION_NONE
Führen Sie keine Aktion für die Daten aus.
FWP_ACTION_NONE_NO_MATCH
Führen Sie keine Aktion für die Daten aus, da sie nicht mit den enumerierten Filterdatentypen übereinstimmen.
FWP_ACTION_PERMIT
Zulassen, dass die Daten übertragen oder empfangen werden.
Der Schreibzugriff auf dieses Member wird durch das FWPS_RIGHT_ACTION_WRITE-Flag im Rechtemember gesteuert. Wenn das flag FWPS_RIGHT_ACTION_WRITE festgelegt ist, kann ein Legendentreiber jeden der oben genannten Werte in diesen Member schreiben. Wenn das FWPS_RIGHT_ACTION_WRITE-Flag nicht festgelegt ist, sollte ein Legendentreiber nicht in dieses Element schreiben, es sei denn, er legt ein Veto gegen eine FWP_ACTION_PERMIT Aktion ein, die zuvor von einem Filter mit höherer Gewichtung in der Filter-Engine zurückgegeben wurde. In einer solchen Situation legt ein Beschriftungstreiber diesen Member auf FWP_ACTION_BLOCK fest.
outContext
Ist für das System reserviert. Legendentreiber dürfen diesen Member nicht verwenden.
filterId
Ist für das System reserviert. Legendentreiber dürfen diesen Member nicht verwenden.
rights
Flags, die den Schreibzugriff auf die anderen Member in dieser Struktur steuern. Mögliche Flags sind:
FWPS_RIGHT_ACTION_WRITE
Wenn dieses Flag festgelegt ist, kann ein Legendentreiber in den actionType-Member dieser Struktur schreiben. Wenn dieses Flag nicht festgelegt ist, kann ein Legendentreiber nur in den actionType-Member dieser Struktur schreiben, wenn er ein Veto gegen eine FWP_ACTION_PERMIT Aktion einnimmt, die zuvor von einem Filter mit höherer Gewichtung in der Filter-Engine zurückgegeben wurde.
flags
Flags, die sich auf die Aktion auswirken, die für die Daten ausgeführt wird. Mögliche Flags sind:
FWPS_CLASSIFY_OUT_FLAG_ABSORB
Die blockierten Daten sollen ohne Ereignisprotokollierung oder Überwachung automatisch gelöscht werden. Dies wird in der Regel für Paketänderungen verwendet, bei denen das ursprüngliche Paket aufgenommen und das geänderte Paket weiter verarbeitet werden soll.
Dieses Flag gilt für die folgenden Ebenen, wenn das actionType-Element auf FWP_ACTION_BLOCK festgelegt ist:
- 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
Es ist auch möglich, dieses Flag auf den ebenen FWPS_LAYER_ALE_FLOW_ESTABLISHED_V4 und FWPS_LAYER_ALE_FLOW_ESTABLISHED_V6 festzulegen. Dies wird jedoch nicht empfohlen, da diese Ebenen für das Zuordnen von Kontext zu Flows vorgesehen sind.
Wenn dieses Flag nicht festgelegt ist, unterliegt eine blockierende Aktion der normalen Ereignisprotokollierung und -überwachung.
FWPS_CLASSIFY_OUT_FLAG_BUFFER_LIMIT_REACHED
Die Filter-Engine legt dieses Flag fest, wenn der Datenpuffer der Filter-Engine für Streamdaten voll ist. Dies kann auftreten, wenn die Legendenfunktion klassifizierenFn wiederholt weitere Daten anfordert, indem das streamAction-Element der FWPS_STREAM_CALLOUT_IO_PACKET0-Struktur auf FWPS_STREAM_ACTION_NEED_MORE_DATA festgelegt wird, bis die Puffergrenze erreicht ist. Wenn dieses Flag festgelegt ist, muss die Aufruffunktion klassifizierenFn des Legendentreibers alle Datenstromdaten entweder zulassen oder blockieren.
Dieses Flag gilt nur für die Streamebenen.
FWPS_CLASSIFY_OUT_FLAG_NO_MORE_DATA
Stream Daten wurden angefordert, nachdem die Verbindung mit dem Datenstrom getrennt wurde.
reserved
Ist für das System reserviert. Legendentreiber dürfen diesen Member nicht verwenden.
Hinweise
Die Filter-Engine übergibt einen Zeiger auf eine FWPS_CLASSIFY_OUT0-Struktur an die Legendenfunktion klassifizierenFn einer Legende. Ein Legendentreiber verwendet diese Struktur, um Daten an den Aufrufer zurückzugeben.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Verfügbar ab Windows Vista. |
Kopfzeile | fwpstypes.h (include Fwpsk.h, Fwpmtypes.h, Fwpmk.h) |
Weitere Informationen
FWPS_STREAM_CALLOUT_IO_PACKET0