FWPS_CALLOUT_CLASSIFY_FN0 Rückruffunktion (fwpsk.h)
Das Filtermodul ruft die klassifizierenFn0 Legendenfunktion eines Popups auf, wenn daten vorhanden sind, die von der Legende verarbeitet werden sollen.
Syntax
FWPS_CALLOUT_CLASSIFY_FN0 FwpsCalloutClassifyFn0;
void FwpsCalloutClassifyFn0(
[in] const FWPS_INCOMING_VALUES0 *inFixedValues,
[in] const FWPS_INCOMING_METADATA_VALUES0 *inMetaValues,
[in, out] void *layerData,
[in] const FWPS_FILTER0 *filter,
[in] UINT64 flowContext,
[in, out] FWPS_CLASSIFY_OUT0 *classifyOut
)
{...}
Parameter
[in] inFixedValues
Ein Zeiger auf eine FWPS_INCOMING_VALUES0 Struktur. Diese Struktur enthält die Werte für jedes datenfeld auf der Ebene, die gefiltert wird.
[in] inMetaValues
Ein Zeiger auf einen FWPS_INCOMING_METADATA_VALUES0 Struktur. Diese Struktur enthält die Werte für jedes Metadatenfeld auf der ebene, die gefiltert wird.
[in, out] layerData
Ein Zeiger auf eine Struktur, die die Rohdaten auf der gefilterten Ebene beschreibt. Dieser Parameter kann NULL-sein, abhängig von der gefilterten Ebene und den Bedingungen, unter denen die klassifizierenFn0 Legendenfunktion aufgerufen wird. Für die Datenstromebene verweist dieser Parameter auf eine FWPS_STREAM_CALLOUT_IO_PACKET0 Struktur. Für alle anderen Ebenen verweist dieser Parameter auf eine NET_BUFFER_LIST Struktur, wenn er nicht NULL-ist.
[in] filter
Ein Zeiger auf eine FWPS_FILTER0 Struktur. Diese Struktur beschreibt den Filter, der die Legende für die Aktion des Filters angibt.
[in] flowContext
Eine UINT64-typierte Variable, die den Kontext enthält, der dem Datenfluss zugeordnet ist. Wenn dem Datenfluss kein Kontext zugeordnet ist, ist dieser Parameter null. Wenn die Legende dem Filtermodul auf einer Filterebene hinzugefügt wird, die keine Datenflüsse unterstützt, sollte die klassifizierenFn0 Legendenfunktion diesen Parameter ignorieren.
[in, out] classifyOut
Ein Zeiger auf eine FWPS_CLASSIFY_OUT0 Struktur, die Daten empfängt, die die klassifizierenFn0 Popupfunktion an den Aufrufer zurückgibt.
Rückgabewert
Nichts
Bemerkungen
Ein Beschriftungstreiber registriert die Legendenfunktionen einer Legende mit dem Filtermodul, indem die FwpsCalloutRegister0-Funktion aufgerufen wird.
Das Filtermodul ruft die klassifizierenFn0 Legendenfunktion mit Daten auf, die verarbeitet werden sollen, wenn alle Testbedingungen für einen Filter im Filtermodul gelten, der die Legende für die Aktion des Filters angibt.
Die klassifizierenFn0 Legendenfunktion einer Legende sollte das FWPS_RIGHT_ACTION_WRITE Flag im Rechte Mitglied der FWPS_CLASSIFY_OUT0 Struktur in einem der folgenden Situationen löschen:
- Wenn die klassifizierenFn0 Legendenfunktion das actionType-Element der FWPS_CLASSIFY_OUT0 Struktur auf FWP_ACTION_BLOCK festlegt.
- Wenn die klassifizierenFn0 Legendenfunktion das actionType-Element der FWPS_CLASSIFY_OUT0 Struktur auf FWP_ACTION_PERMIT und das FWPS_FILTER_FLAG_CLEAR_ACTION_RIGHT Flag im Flags Member der FWPS_FILTER0 Struktur festgelegt wird.
- Wenn eine Legende angegeben hat, dass sie beabsichtigt, die Klon-Netpufferliste zu ändern, indem sie den intendToModify Parameter auf TRUE in einem Aufruf der FwpsReferenceNetBufferList0--Funktion festlegen.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Verfügbar ab Windows Vista. |
Zielplattform- | Fenster |
Header- | fwpsk.h (include Fwpsk.h) |
IRQL- | <= DISPATCH_LEVEL |
Siehe auch
Zuordnen des Kontexts zu einem Datenfluss-
FWPS_INCOMING_METADATA_VALUES0Registrieren von Legenden mit dem Filtermodul
Verwenden einer Legende zur tiefen Inspektion von Datenstromdaten