FwpsQueryPacketInjectionState0-Funktion (fwpsk.h)
Die FwpsQueryPacketInjectionState0-Funktion wird von einer Legende aufgerufen, um den Einschleusungsstatus von Paketdaten abzufragen.
Syntax
FWPS_PACKET_INJECTION_STATE FwpsQueryPacketInjectionState0(
[in] HANDLE injectionHandle,
[in] const NET_BUFFER_LIST *netBufferList,
[out, optional] HANDLE *injectionContext
);
Parameter
[in] injectionHandle
Ein Einschleusungshandle, das zuvor durch einen Aufruf von erstellt wurde FwpsInjectionHandleCreate0-Funktion .
[in] netBufferList
Ein Zeiger auf eine NET_BUFFER_LIST Struktur, die die zu klassifizierenden Paketdaten beschreibt. Das Paket kann aus dem Netzwerkstapel stammen oder von einem WFP-Aufruftreiber in den Netzwerkstapel eingefügt werden.
[out, optional] injectionContext
Ein optionales Handle für den Einschleusungskontext. Wenn der Zeiger angegeben ist und der Paketinjektionszustand FWPS_PACKET_INJECTION_STATE , der dem Einschleusungshandle zugeordnet ist, FWPS_PACKET_INJECTED_BY_SELF oder FWPS_PACKET_PREVIOUSLY_INJECTED_BY_SELF ist, wird der beim Einfügen des Pakets angegebene Einschleusungskontext zurückgegeben.
Rückgabewert
Die FwpsQueryPacketInjectionState0-Funktion gibt einen der konstanten Werte der FWPS_PACKET_INJECTION_STATE-Enumeration zurück.
Hinweise
Da injizierte Paketdaten für die Legende, die sie eingefügt hat, neu klassifiziert werden können, ermöglicht diese Funktion einem Aufruf, den Einschleusungsverlauf von Paketdaten bei Bedarf zu überprüfen, wodurch die Notwendigkeit vermieden wird, wiederholte Überprüfungen von Paketdaten durchzuführen, die bereits überprüft wurden.
Eine Legende kann andere legendenspezifische Informationen nachverfolgen, indem das optionale injectionContext-Handle in einer der Paketeinschleusungsfunktionen zum Zeitpunkt der Paketdateneinschleusung angegeben wird. Wenn die FwpsQueryPacketInjectionState0-FunktionFWPS_PACKET_INJECTED_BY_SELF oder FWPS_PACKET_PREVIOUSLY_INJECTED_BY_SELF zurückgibt, wird der angegebene injectionContext als completionContext-Parameter der Funktion zurückgegeben, die die Injektion ausgeführt hat.
Wenn der Rückgabewert FWPS_PACKET_INJECTED_BY_SELF oder FWPS_PACKET_PREVIOUSLY_INJECTED_BY_SELF ist, sollte die Netzwerkpufferliste, auf die von netBufferList verwiesen wird, nicht im Rahmen eines Klon- und Einschleusungsverfahrens weiter geändert oder geschrieben werden. In diesem Fall sollte die Legende den actionType-Member der FWPS_CLASSIFY_OUT0 Struktur festlegen, auf die der klassifizierungOut-Parameter der klassifizierenFn-Funktion verweist, entweder auf FWP_ACTION_CONTINUE oder FWP_ACTION_PERMIT. Dadurch kann das Paket mit der nächsten Legende fortfahren.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Verfügbar ab Windows Vista. |
Zielplattform | Universell |
Header | fwpsk.h (include Fwpsk.h) |
Bibliothek | Fwpkclnt.lib |
IRQL | <= DISPATCH_LEVEL |