Partager via


FWPS_CALLOUT1 structure (fwpsk.h)

La structure FWPS_CALLOUT1 définit les données requises pour qu’un pilote de légende inscrive une légende auprès du moteur de filtre.

NotezFWPS_CALLOUT1 est la version spécifique de FWPS_CALLOUT utilisée dans Windows 7 et versions ultérieures. Pour plus d’informations , consultez WFP Version-Independent Names and Targeting Specific Versions of Windows . Pour Windows 8, FWPS_CALLOUT2 est disponible. Pour Windows Vista, FWPS_CALLOUT0 est disponible.
 

Syntaxe

typedef struct FWPS_CALLOUT1_ {
  GUID                                calloutKey;
  UINT32                              flags;
  FWPS_CALLOUT_CLASSIFY_FN1           classifyFn;
  FWPS_CALLOUT_NOTIFY_FN1             notifyFn;
  FWPS_CALLOUT_FLOW_DELETE_NOTIFY_FN0 flowDeleteFn;
} FWPS_CALLOUT1;

Membres

calloutKey

GUID défini par le pilote de légende qui identifie la légende de manière unique.

flags

Indicateurs qui spécifient des paramètres spécifiques à une légende. Les indicateurs possibles sont les suivants :

Valeur Signification
FWP_CALLOUT_FLAG_CONDITIONAL_ON_FLOW
0x00000001
Un pilote de légende peut spécifier cet indicateur lors de l’inscription d’une légende qui sera ajoutée à une couche qui prend en charge les flux de données. Si cet indicateur est spécifié, le moteur de filtre appelle la fonction de légende classifyFn1 du pilote de légende uniquement si un contexte est associé au flux de données. Un pilote de légende associe un contexte à un flux de données en appelant la fonction FwpsFlowAssociateContext0 .
FWP_CALLOUT_FLAG_ALLOW_OFFLOAD
0x00000002
Un pilote de légende spécifie cet indicateur pour indiquer que la fonction de légende classifyFn1 du pilote de légende n’est pas affectée par le déchargement du traitement des données réseau vers des cartes d’interface réseau prenant en charge le déchargement. Si cet indicateur n’est pas spécifié, le déchargement du traitement des données réseau est désactivé pour tout le trafic traité par les filtres qui spécifient la légende de l’action du filtre.
FWP_CALLOUT_FLAG_ENABLE_COMMIT_ADD_NOTIFY
0x00000004
Un pilote de légende spécifie cet indicateur pour indiquer qu’il peut recevoir des notifications sur les objets et les filtres ajoutés à l’intérieur d’une transaction. Le moteur de filtre envoie la notification une fois la transaction validée.
FWP_CALLOUT_FLAG_ALLOW_MID_STREAM_INSPECTION
0x00000008
Un pilote de légende spécifie cet indicateur pour indiquer qu’il peut effectuer une inspection dynamique des flux de données au niveau du flux. Consultez inspection Stream.
FWP_CALLOUT_FLAG_ALLOW_RECLASSIFY
0x00000010
Un pilote de légende spécifie cet indicateur pour s’inscrire lui-même pour être appelé lorsqu’une opération de socket existante est reclassée.

classifyFn

Pointeur vers la fonction de légende classifyFn1 du pilote de légende. Le moteur de filtre appelle cette fonction chaque fois qu’il y a des données réseau à traiter par la légende.

notifyFn

Pointeur vers la fonction notifyFn1 du pilote de légende. Le moteur de filtre appelle cette fonction pour informer le pilote de légende des événements associés à la légende.

flowDeleteFn

Pointeur vers la fonction de légende flowDeleteFn du pilote de légende. Le moteur de filtre appelle cette fonction chaque fois qu’un flux de données en cours de traitement par la légende est arrêté.

Si un pilote de légende n’associe pas de contexte aux flux de données que la légende traite, ce membre doit être défini sur NULL.

Remarques

Un pilote de légende passe un pointeur vers une structure de FWPS_CALLOUT1 initialisée à la fonction FwpsCalloutRegister1 lorsqu’elle inscrit une légende auprès du moteur de filtre.

Une légende peut définir l’indicateur FWP_CALLOUT_FLAG_CONDITIONAL_ON_FLOW uniquement pour les connexions sur lesquelles le pilote souhaite effectuer des inspections de flux. Cette légende sera ignorée sur toutes les autres connexions. Les performances seront améliorées et le pilote n’aura pas à gérer les données d’état inutiles.

Cette structure est essentiellement identique à la version précédente, FWPS_CALLOUT0. Les seules différences sont que les membres de cette version stockent les versions mises à jour des pointeurs de fonction de légende, et que des indicateurs supplémentaires sont disponibles pour les pilotes de légende à définir.

Configuration requise

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

Voir aussi

FWPS_CALLOUT0

FWPS_CALLOUT2

FwpsCalloutRegister1

classifiFn1

flowDeleteFn

notifyFn1