structure FWPS_CALLOUT3 (fwpsk.h)
La structure FWPS_CALLOUT3 définit les données requises pour qu’un pilote de légende inscrive une légende auprès du moteur de filtre.
Syntaxe
typedef struct FWPS_CALLOUT3_ {
GUID calloutKey;
UINT32 flags;
FWPS_CALLOUT_CLASSIFY_FN3 classifyFn;
FWPS_CALLOUT_NOTIFY_FN3 notifyFn;
FWPS_CALLOUT_FLOW_DELETE_NOTIFY_FN0 flowDeleteFn;
} FWPS_CALLOUT3;
Membres
calloutKey
GUID défini par le pilote de légende qui identifie de manière unique la légende.
flags
Indicateurs qui spécifient des paramètres spécifiques aux légendes. 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 classifierFn3 fonction de légende uniquement s’il existe un contexte 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 classifierFn3 fonction de légende n’est pas affectée par le déchargement du traitement des données réseau pour décharger les cartes d’interface réseau compatibles. 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 tous 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 l’inspection dynamique des flux de données au niveau du flux. Consultez d’inspection de flux. |
FWP_CALLOUT_FLAG_ALLOW_RECLASSIFY 0x00000010 |
Un pilote de légende spécifie cet indicateur pour s’inscrire pour être appelé lorsqu’une opération de socket existante est reclassifiée. |
FWP_CALLOUT_FLAG_RESERVED1 0x00000020 |
Réservé à l’utilisation du système. Les pilotes de légende doivent ignorer cet indicateur. |
FWP_CALLOUT_FLAG_ALLOW_RSC 0x00000040 |
Un pilote de légende spécifie cet indicateur pour indiquer que la légende prend en charge la fusion du segment de réception TCP (RSC) avec de gros paquets allant jusqu’à 64 Ko. Si cet indicateur n’est pas spécifié et qu’une légende est inscrite, RSC est désactivé pour tout le trafic traité par tous les filtres qui spécifient la légende de l’action du filtre. |
FWP_CALLOUT_FLAG_ALLOW_L2_BATCH_CLASSIFY 0x00000080 |
Un pilote de légende spécifie cet indicateur lors de l’inscription d’une légende qui sera ajoutée au niveau de la couche 2, pour indiquer que son classifierFn3 fonction de légende peut classifier plusieurs structures de NET_BUFFER_LIST chaînées. Pour plus d’informations, consultez Utilisation du filtrage de couche 2. Attention : Si un pilote de légende définit cet indicateur, il ne peut pas utiliser les fonctions suivantes pour modifier NET_BUFFER_LISTs. • FwpsReferenceNetBufferList0 • FwpsDereferenceNetBufferList0 • FwpsAllocateCloneNetBufferList0 • FwpsFreeCloneNetBufferList0 Avec cet indicateur défini, FwpsAllocateCloneNetBufferList0 retourne toujours une erreur INVALID_PARAMETER. Cela peut entraîner un échec inattendu d’un pilote de légende tiers pour gérer le nombre de références de NET_BUFFER_LISTs, ce qui entraîne l’arrêt des opérations d’envoi et de réception. |
FWP_CALLOUT_FLAG_ALLOW_USO 0x00000100 |
Un pilote de légende spécifie cet indicateur pour indiquer que la légende prend en charge le déchargement de segmentation UDP (USO) avec des paquets plus grands que le MTU du support réseau. Si cet indicateur n’est pas spécifié et qu’une légende est inscrite, l’authentification USO est désactivée pour tout le trafic traité par tous les filtres qui spécifient la légende de l’action du filtre. Remarque : La version la plus ancienne dans laquelle cet indicateur est pris en charge est Windows Insider Preview, version 10.0.25876. |
FWP_CALLOUT_FLAG_ALLOW_URO 0x00000200 |
Un pilote de légende spécifie cet indicateur pour indiquer que la légende prend en charge le déchargement de réception UDP (URO) avec des paquets volumineux allant jusqu’à 64 Ko. Si cet indicateur n’est pas spécifié et qu’une légende est inscrite, URO est désactivé pour tout le trafic traité par tous les filtres qui spécifient la légende de l’action du filtre. Remarque : Si cet indicateur est spécifié, les légendes ne doivent pas cloner et réinjecter des paquets URO entrants. |
classifyFn
Pointeur vers la fonction de légende classifierFn3 fonction de légende du pilote de légende. Le moteur de filtre appelle cette fonction chaque fois qu’il existe des données réseau à traiter par la légende.
notifyFn
Pointeur vers la fonction notifyFn3 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 transmet un pointeur vers une structure de FWPS_CALLOUT3 initialisée vers la fonction FwpsCalloutRegister3 lorsqu’elle inscrit une légende auprès du moteur de filtre.
Une légende peut définir l’indicateur de FWP_CALLOUT_FLAG_CONDITIONAL_ON_FLOW uniquement pour les connexions sur lesquelles le pilote souhaite effectuer des inspections de flux. Cette légende est ignorée sur toutes les autres connexions. Les performances seront améliorées et le pilote n’aura pas besoin de conserver les données d’état inutiles.
FWPS_CALLOUT3 est la version spécifique de FWPS_CALLOUT. Pour plus d’informations, consultez PAM Version-Independent noms et ciblage de versions spécifiques de Windows.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Disponible à partir de Windows 8. |
d’en-tête | fwpsk.h |