FWPS_FILTER1 structure (fwpstypes.h)

La structure FWPS_FILTER1 définit un filtre d’exécution dans le moteur de filtre. FWPS_FILTER0 est disponible.

Syntaxe

typedef struct FWPS_FILTER1_ {
  UINT64                 filterId;
  FWP_VALUE0             weight;
  UINT16                 subLayerWeight;
  UINT16                 flags;
  UINT32                 numFilterConditions;
  FWPS_FILTER_CONDITION0 *filterCondition;
  FWPS_ACTION0           action;
  UINT64                 context;
  FWPM_PROVIDER_CONTEXT1 *providerContext;
} FWPS_FILTER1;

Membres

filterId

Identificateur d’exécution qui identifie le filtre dans le moteur de filtre.

weight

Une structure FWP_VALUE0 qui contient une valeur qui spécifie l’importance du filtre par rapport aux autres filtres du moteur de filtre. Les filtres avec une valeur de poids plus élevée sont appelés en premier. Le type de données spécifié dans la structure FWP_VALUE0 est FWP_UINT64 ou FWP_EMPTY. Si le type de données spécifié dans la structure FWP_VALUE0 est FWP_EMPTY, le moteur de filtre affecte automatiquement un poids au filtre en fonction de la spécificité du filtre teste les données par rapport aux autres filtres du moteur de filtre.

subLayerWeight

Valeur qui spécifie l’importance de la sous-couche du filtre par rapport aux autres sous-couches du moteur de filtre. Les filtres qui se trouvent dans une sous-couche avec une valeur subLayerWeight supérieure sont appelés en premier.

flags

Indicateurs qui spécifient les actions que la fonction de légende classifyFn1 d’une légende doit effectuer lors du traitement des données réseau. Les indicateurs possibles sont les suivants :

Valeur Signification
FWPS_FILTER_FLAG_CLEAR_ACTION_RIGHT Cet indicateur indique à la fonction de légende classifyFn1 d’une légende qu’elle doit toujours effacer l’indicateur FWPS_RIGHT_ACTION_WRITE lorsqu’il retourne FWP_ACTION_BLOCK ou FWP_ACTION_PERMIT pour l’action suggérée. Si cet indicateur n’est pas défini, la fonction de légende classifyFn1 d’une légende ne doit effacer l’indicateur FWPS_RIGHT_ACTION_WRITE que lorsqu’elle retourne FWP_ACTION_BLOCK pour l’action suggérée.
FWPS_FILTER_FLAG_PERMIT_IF_CALLOUT_UNREGISTERED Cet indicateur indique à la fonction de légende classifyFn1 d’une légende que si la légende n’est pas inscrite, la légende doit être traitée comme un filtre d’autorisation.

numFilterConditions

Nombre de structures FWPS_FILTER_CONDITION0 dans le tableau désigné par le membre filterCondition . Ce membre peut être égal à zéro.

filterCondition

Pointeur vers un tableau de structures FWPS_FILTER_CONDITION0 . Ces structures définissent les conditions de filtrage d’exécution pour le filtre. Si le membre numFilterConditions est égal à zéro, ce pointeur est NULL.

action

Structure FWPS_ACTION0 qui spécifie l’action que le filtre doit effectuer si toutes les conditions de filtrage du filtre sont remplies.

context

Valeur de contexte associée au filtre. Une légende peut définir ce membre pour qu’il pointe vers une structure de contexte fournie par le pilote de légende à partir de la fonction de légende notifyFn1 du pilote de légende lorsque le filtre est ajouté au moteur de filtre. Cette structure de contexte, qui est opaque au moteur de filtre, peut être utilisée par la fonction de légende classifyFn1 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 la fonction de légende classifyFn1 du pilote de légende.

providerContext

Pointeur vers le contexte du fournisseur, qui est mis en forme en tant que structure FWPM_PROVIDER_CONTEXT1 . Si le filtre utilise une légende et que la légende a l’indicateur FWPM_CALLOUT_FLAG_USES_PROVIDER_CONTEXT défini, ce membre contient le contexte de fournisseur de la structure FWPM_FILTER0 correspondante. Sinon, ce paramètre est NULL.

Notes

Le moteur de filtre transmet un pointeur vers une structure FWPS_FILTER1 aux fonctions de légende notifyFn1 et classifyFn1 d’une légende.

L’action d’un filtre est effectuée uniquement si toutes les conditions de filtrage du filtre sont remplies. Si aucune condition de filtrage n’est spécifiée dans le filtre, l’action spécifiée est toujours effectuée.

Le membre ProviderContext fournit un mécanisme permettant à un pilote de légende de récupérer les contextes du fournisseur sans appeler le moteur de filtrage de base (BFE).

Spécifications

   
Client minimal pris en charge Disponible à partir de Windows 7.
En-tête fwpstypes.h (include Fwpsk.h)

Voir aussi

FWPM_CALLOUT0

FWPM_FILTER0

FWPM_PROVIDER_CONTEXT1

FWPS_ACTION0

FWPS_FILTER0

FWPS_FILTER2

FWPS_FILTER_CONDITION0

FWP_VALUE0

classifiFn1

notifyFn1