Partager via


FWPS_CALLOUT_CLASSIFY_FN2 fonction de rappel (fwpsk.h)

Le moteur de filtre appelle la fonction de légende classifierFn2 fonction de légende chaque fois qu’il existe des données à traiter par la légende.

RemarqueclassifierFn2 est la version spécifique de classifieFn utilisée dans Windows 8 et versions ultérieures. Pour plus d’informations, consultez PAM Version-Independent noms et ciblage de versions spécifiques de Windows. Pour Windows 7, classifierFn1 est disponible. Pour Windows Vista, classifierFn0 est disponible.

 

Syntaxe

FWPS_CALLOUT_CLASSIFY_FN2 FwpsCalloutClassifyFn2;

void FwpsCalloutClassifyFn2(
  [in]                const FWPS_INCOMING_VALUES0 *inFixedValues,
  [in]                const FWPS_INCOMING_METADATA_VALUES0 *inMetaValues,
  [in, out, optional] void *layerData,
  [in, optional]      const void *classifyContext,
  [in]                const FWPS_FILTER2 *filter,
  [in]                UINT64 flowContext,
  [in, out]           FWPS_CLASSIFY_OUT0 *classifyOut
)
{...}

Paramètres

[in] inFixedValues

Pointeur vers une structure FWPS_INCOMING_VALUES0. Cette structure contient les valeurs de chacun des champs de données de la couche filtrée.

[in] inMetaValues

Pointeur vers un structure FWPS_INCOMING_METADATA_VALUES0. Cette structure contient les valeurs de chacun des champs de métadonnées de la couche filtrée.

[in, out, optional] layerData

Pointeur vers une structure qui décrit les données brutes dans la couche filtrée. Ce paramètre peut être NULL, selon la couche filtrée et les conditions dans lesquelles la fonction de légende classifierFn2 est appelée. Pour la couche de flux, ce paramètre pointe vers un structure FWPS_STREAM_CALLOUT_IO_PACKET0. Pour toutes les autres couches, ce paramètre pointe vers une structure NET_BUFFER_LIST si elle n’est pas NULL.

[in, optional] classifyContext

Pointeur vers les données de contexte associées au pilote de légende par le moteur de filtre.

[in] filter

Pointeur vers une structure FWPS_FILTER2. Cette structure décrit le filtre qui spécifie la légende de l’action du filtre.

[in] flowContext

Variable typée UINT64 qui contient le contexte associé au flux de données. Si aucun contexte n’est associé au flux de données, ce paramètre est égal à zéro. Si la légende est ajoutée au moteur de filtre dans une couche de filtrage qui ne prend pas en charge les flux de données, la classifiezFn2 fonction de légende doit ignorer ce paramètre.

[in, out] classifyOut

Pointeur vers une structure FWPS_CLASSIFY_OUT0 qui reçoit toutes les données que la fonction de légende classifieFn2 retourne à l’appelant.

Valeur de retour

Aucun

Remarques

Un pilote de légende inscrit les fonctions de légende d’un légende auprès du moteur de filtre en appelant la fonction FwpsCalloutRegister2.

Le moteur de filtre appelle la fonction de légende classifierFn2 fonction de légende avec des données à traiter chaque fois que toutes les conditions de test sont remplies pour un filtre dans le moteur de filtre qui spécifie la légende de l’action du filtre.

La fonction de légende classifieFn2 de légende doit effacer l’indicateur de FWPS_RIGHT_ACTION_WRITE dans les droits de membre de la structure FWPS_CLASSIFY_OUT0 dans l’une des situations suivantes :

  • Lorsque la fonction de légende classifierFn2 définit le membre actionType de la structure de FWPS_CLASSIFY_OUT0 sur FWP_ACTION_BLOCK.
  • Lorsque la fonction de légende classifierFn2 définit le membre actionType de la structure FWPS_CLASSIFY_OUT0 sur FWP_ACTION_PERMIT et que l’indicateur FWPS_FILTER_FLAG_CLEAR_ACTION_RIGHT est défini dans le membre de la structure FWPS_FILTER2.
  • Lorsqu’une légende a indiqué qu’elle a l’intention de modifier la liste de mémoires tampons nettes clones en définissant le paramètre intendToModify sur TRUE dans un appel au fonction FwpsReferenceNetBufferList0.

    Cette fonction est essentiellement identique à la version précédente, classifierFn1. Toutefois, la structure de FWPS_FILTER2 mise à jour est pointée par le paramètre de filtre et le paramètre layerData est facultatif.

Exigences

Exigence Valeur
client minimum pris en charge Disponible à partir de Windows 8.
plateforme cible Windows
d’en-tête fwpsk.h (include Fwpsk.h)
IRQL <= DISPATCH_LEVEL

Voir aussi

associer un contexte à un flux de données

fonctions de légende du pilote de légende

de journalisation des données

FWPS_CLASSIFY_OUT0

FWPS_FILTER2

FWPS_INCOMING_METADATA_VALUES0

FWPS_INCOMING_VALUES0

FwpsCalloutRegister2

FwpsReferenceNetBufferList0

NET_BUFFER_LIST

exemples de modification de paquets

inscrire des légendes auprès du moteur de filtre

à l’aide d’une légende pour l’inspection approfondie des données de flux de données

à l’aide d’une légende pour les d’inspection approfondie

classifierFn

classifierFn0

classifierFn1