Funzione FwpsQueryPacketJetectionState0 (fwpsk.h)
La funzione FwpsQueryPacketPacketState0 viene chiamata da un callout per eseguire una query sullo stato di inserimento dei dati del pacchetto.
Sintassi
FWPS_PACKET_INJECTION_STATE FwpsQueryPacketInjectionState0(
[in] HANDLE injectionHandle,
[in] const NET_BUFFER_LIST *netBufferList,
[out, optional] HANDLE *injectionContext
);
Parametri
[in] injectionHandle
Handle injection creato in precedenza da una chiamata a Funzione di FwpsHandectionHandleCreate0.
[in] netBufferList
Puntatore a una struttura NET_BUFFER_LIST che descrive i dati del pacchetto classificati. Il pacchetto può provenire dallo stack di rete oppure può essere inserito nello stack di rete da un driver callout WFP.
[out, optional] injectionContext
Handle facoltativo per il contesto di inserimento. Se viene specificato il puntatore e se lo stato di inserimento del pacchetto FWPS_PACKET_INJECTION_STATE associato all'handle di inserimento è FWPS_PACKET_INJECTED_BY_SELF o FWPS_PACKET_PREVIOUSLY_INJECTED_BY_SELF, il contesto di inserimento fornito quando il pacchetto è stato inserito verrà restituito.
Valore restituito
La funzione fwpsQueryPacketPacketPacketState0 restituisce uno dei valori costanti dell'enumerazione FWPS_PACKET_INJECTION_STATE.
Osservazioni
Poiché i dati dei pacchetti inseriti possono essere riclassificati rispetto al callout che lo ha inserito, questa funzione consente a un callout di esaminare la cronologia di inserimento dei dati del pacchetto quando necessario, evitando così la necessità di eseguire ispezioni ripetute dei dati dei pacchetti già controllati.
Un callout può tenere traccia di altre informazioni specifiche del callout specificando l'handle facoltativo injectionContext in una delle funzioni di inserimento di pacchetti al momento dell'inserimento di pacchetti. Se la funzione FwpsQueryPacketPacketText0 restituisce FWPS_PACKET_INJECTED_BY_SELF o FWPS_PACKET_PREVIOUSLY_INJECTED_BY_SELF, l'injectionContext fornito verrà restituito come parametro completionContext della funzione che ha eseguito l'inserimento.
Se il valore restituito è FWPS_PACKET_INJECTED_BY_SELF o FWPS_PACKET_PREVIOUSLY_INJECTED_BY_SELF, l'elenco di buffer di rete a cui punta netBufferList non deve essere ulteriormente modificato o sottoposto a penna come parte di una procedura di clonazione e inserimento. In questo caso, il callout deve impostare il membro actionType della struttura FWPS_CLASSIFY_OUT0 a cui punta il parametro classifyOut della funzione classifyFn su FWP_ACTION_CONTINUE o FWP_ACTION_PERMIT. Ciò consente al pacchetto di procedere al callout successivo.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Disponibile a partire da Windows Vista. |
piattaforma di destinazione | Universale |
intestazione | fwpsk.h (include Fwpsk.h) |
libreria | Fwpkclnt.lib |
IRQL | <= DISPATCH_LEVEL |