FWPS_CALLOUT_NOTIFY_FN0 fonction de rappel (fwpsk.h)
Le moteur de filtre appelle la fonction de légende notifyFn0 d’une légende pour informer le pilote de légende des événements associés à la légende.
Syntaxe
FWPS_CALLOUT_NOTIFY_FN0 FwpsCalloutNotifyFn0;
NTSTATUS FwpsCalloutNotifyFn0(
[in] FWPS_CALLOUT_NOTIFY_TYPE notifyType,
[in] const GUID *filterKey,
[in] FWPS_FILTER0 *filter
)
{...}
Paramètres
[in] notifyType
Valeur qui indique le type de notification que le moteur de filtre envoie à la légende. Les valeurs valides pour ce paramètre sont les suivantes :
FWPS_CALLOUT_NOTIFY_ADD_FILTER
Un filtre est ajouté au moteur de filtre qui spécifie la légende de l’action du filtre.
FWPS_CALLOUT_NOTIFY_DELETE_FILTER
Un filtre est en cours de suppression du moteur de filtre qui spécifie la légende de l’action du filtre.
FWPS_CALLOUT_NOTIFY_TYPE_MAX
Valeur maximale à des fins de test.
[in] filterKey
Pointeur vers l’identificateur de gestion du filtre, tel que spécifié par l’application ou le pilote qui ajoute ou supprime le filtre. Doit avoir la valeur NULL si le paramètre notifyType est défini sur FWPS_CALLOUT_NOTIFY_DELETE_FILTER. Pour plus d'informations, consultez la section Notes.
[in] filter
Pointeur vers une structure FWPS_FILTER0 . Cette structure décrit le filtre ajouté ou supprimé du moteur de filtre.
La fonction de légende notifyFn0 d’une légende peut définir le membre Context de cette structure pour qu’il pointe vers une structure de contexte fournie par le pilote de légende lorsque le filtre est ajouté au moteur de filtre. Cette structure de contexte est opaque pour le moteur de filtre et peut être utilisée par la fonction de légende classFn0 du pilote de légende pour conserver toutes les données ou informations d’état spécifiques au pilote entre les appels du moteur de filtre et le pilote de légende
Fonction de légende classFn0 .
La fonction de légende notifyFn0 d’une légende peut propre n’importe quel contexte associé au filtre lorsque le filtre est supprimé du moteur de filtre.
Valeur retournée
La fonction notifyFn0 d’une légende retourne l’un des codes NTSTATUS suivants.
Code de retour | Description |
---|---|
|
Le pilote de légende accepte la notification du moteur de filtre. |
|
Une erreur est survenue. Si le paramètre notifyType est FWPS_CALLOUT_NOTIFY_ADD_FILTER, le filtre n’est pas ajouté au moteur de filtre. Si le paramètre notifyType est FWPS_CALLOUT_NOTIFY_DELETE_FILTER, le filtre est toujours supprimé du moteur de filtre. |
Remarques
Un pilote de légende inscrit les fonctions de légende d’une légende auprès du moteur de filtre en appelant la fonction FwpsCalloutRegister0 .
Le moteur de filtre appelle la fonction de légende notifyFn0 d’une légende pour informer le pilote de légende des événements associés à la légende. Si la fonction de légende notifyFn0 du pilote de légende ne reconnaît pas le type de notification passée dans le paramètre notifyType , elle ignore la notification et retourne STATUS_SUCCESS.
Si un pilote de légende inscrit une légende auprès du moteur de filtre après que les filtres qui spécifient la légende de l’action du filtre ont déjà été ajoutés au moteur de filtre, le moteur de filtre n’appelle pas la fonction de légende notifyFn0 du pilote de légende pour informer la légende de l’un des filtres existants. Le moteur de filtre appelle la fonction de légende notifyFn0 du pilote de légende pour notifier la légende lorsque de nouveaux filtres qui spécifient la légende pour l’action du filtre sont ajoutés au moteur de filtre. Dans ce cas, la fonction de légende notifyFn0 d’une légende peut ne pas être appelée pour chaque filtre dans le moteur de filtre qui spécifie la légende de l’action du filtre. Si un pilote de légende inscrit une légende après le démarrage du moteur de filtre et que la légende doit connaître chaque filtre dans le moteur de filtre qui spécifie la légende pour l’action du filtre, le pilote de légende doit appeler les fonctions de gestion appropriées pour énumérer tous les filtres dans le moteur de filtre et trier la liste des filtres résultante pour trouver ceux qui spécifient la légende pour l’action du filtre. Pour plus d’informations sur l’appel de ces fonctions, consultez Appel d’autres fonctions de plateforme de filtrage Windows .
Lorsqu’un filtre qui spécifie une légende pour l’action du filtre est supprimé du moteur de filtre, le moteur de filtre appelle la fonction de légende notifyFn0 du pilote de légende et transmet FWP_CALLOUT_NOTIFY_DELETE_FILTER dans le paramètre notifyType et NULL dans le paramètre filterKey . Pour plus d’informations, consultez Traitement des légendes de notification.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible à partir de Windows Vista. |
Plateforme cible | Windows |
En-tête | fwpsk.h (include Fwpsk.h) |
IRQL | <= DISPATCH_LEVEL |