FWPS_VSWITCH_FILTER_ENGINE_REORDER_CALLBACK0 funzione di callback (fwpsk.h)
Il motore di filtro chiama la funzione callout vSwitchFilterEngineReorderNotifyRn (FWPS_VSWITCH_FILTER_ENGINE_REORDER_CALLBACK0) per notificare al driver callout gli eventi associati al motore di filtro del commutatore virtuale riordinando.
Sintassi
FWPS_VSWITCH_FILTER_ENGINE_REORDER_CALLBACK0 FwpsVswitchFilterEngineReorderCallback0;
NTSTATUS FwpsVswitchFilterEngineReorderCallback0(
[in, optional] void *notifyContext,
[in] void *completionContext,
[in] BOOLEAN isInRequiredPosition,
[in] const NDIS_ENUM_FILTERS *vSwitchExtensionLwfList
)
{...}
Parametri
[in, optional] notifyContext
Puntatore a un contesto fornito dal driver di callout. Il driver ha passato questo puntatore al parametro notifyContext della funzione FwpsvSwitchEventsSubscribe0 . Questo parametro è facoltativo e può essere NULL.
[in] completionContext
Puntatore a un contesto di completamento fornito dal driver di callout. Questo parametro è facoltativo e può essere NULL.
[in] isInRequiredPosition
Valore BOOLEAN impostato su TRUE se il filtro è nella posizione necessaria nello stack di filtri o FALSE se non è.
[in] vSwitchExtensionLwfList
Struttura NDIS_ENUM_FILTERS che specifica un elenco dei driver di filtro NDIS dell'estensione del commutatore virtuale.
Valore restituito
Callout
FWPS_VSWITCH_FILTER_ENGINE_REORDER_CALLBACK0 funzione restituisce uno dei codici NTSTATUS seguenti.
Codice restituito | Descrizione |
---|---|
|
Il driver di callout accetta la notifica dal motore di filtro. |
|
Si è verificato un errore. |
Commenti
Un driver di callout registra un
funzione vSwitchFilterEngineReorderNotifyRn chiamando la chiamata
funzione FwpsvSwitchEventsSubscribe0 .
Per impostazione predefinita, l'estensione del commutatore virtuale WFP viene posizionata come prima estensione di filtro all'ingresso del commutatore virtuale. (Pertanto, è anche l'ultima estensione in uscita del commutatore virtuale). Questa è in genere la posizione migliore, perché l'estensione WFP può intercettare i pacchetti prima che eventuali altre estensioni possano modificarle in ingresso. Inoltre, l'estensione WFP può intercettare i pacchetti dopo che tutte le modifiche dei pacchetti vengono eseguite in uscita.
Tuttavia, poiché un amministratore può riordinare tutte le estensioni del commutatore virtuale della stessa classe, l'estensione WFP può essere riordinata dalla posizione predefinita. Dopo che si verifica un nuovo ordinamento, i filtri di un client WFP potrebbero essere ignorati e potrebbero essere modificati.
Se il callback vSwitchFilterEngineReorderNotifyRn viene registrato, il driver di callout riceve una notifica quando si verifica una riordinazione di un commutatore virtuale. Il driver di callout riceve una struttura NDIS_ENUM_FILTERS con un elenco ordinato di estensioni del commutatore virtuale corrente nel parametro vSwitchExtensionLwfList .
Se le estensioni del commutatore virtuale vengono riordinate, l'estensione WFP viene sospesa (vedere FilterPause) e riavviata (vedere FilterRestart). Dalla chiamata FilterRestart del filtro WFP, il driver di filtro WFP chiama la funzione NdisEnumerateFilterModules per ottenere un elenco ordinato di filtri di estensione del commutatore virtuale. Se l'estensione WFP non è nella posizione predefinita, il driver di filtro notifica i driver di callout.
Un driver di callout non può restituire STATUS_PENDING da vSwitchFilterEngineReorderNotifyRn.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Disponibile a partire da Windows 8. |
Piattaforma di destinazione | Windows |
Intestazione | fwpsk.h (includere Fwpsk.h) |
IRQL | <= DISPATCH_LEVEL |
Vedi anche
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per