Partager via


structure FWPS_CONNECT_REQUEST0 (fwpsk.h)

La structure FWPS_CONNECT_REQUEST0 définit des données modifiables pour les couches FWPM_LAYER_ALE_AUTH_CONNECT_REDIRECT_V4 et FWPM_LAYER_ALE_AUTH_CONNECT_REDIRECT_V6 . Le pilote de légende utilise ces données pour inspecter ou modifier les informations de connexion.

NotezFWPS_CONNECT_REQUEST0 est une version spécifique de FWPS_CONNECT_REQUEST. Pour plus d’informations , voir PAM Version-Independent noms et Ciblage de versions spécifiques de Windows .
 

Syntaxe

typedef struct _FWPS_CONNECT_REQUEST0 {
  SOCKADDR_STORAGE              localAddressAndPort;
  SOCKADDR_STORAGE              remoteAddressAndPort;
  UINT64                        portReservationToken;
  DWORD                         localRedirectTargetPID;
  struct _FWPS_CONNECT_REQUEST0 *previousVersion;
  UINT64                        modifierFilterId;
  HANDLE                        localRedirectHandle;
  void                          *localRedirectContext;
  SIZE_T                        localRedirectContextSize;
} FWPS_CONNECT_REQUEST0;

Membres

localAddressAndPort

Adresse de transport locale de la demande de connexion. Il s’agit d’une adresse IPV4 ou IPV6 et d’un port TCP mis en forme en tant que structure SOCKADDR_STORAGE .

remoteAddressAndPort

Adresse de transport distante de la demande de connexion. Il s’agit d’une adresse IPV4 ou IPV6 et d’un port TCP/UDP mis en forme en tant que structure SOCKADDR_STORAGE .

portReservationToken

Jeton utilisé pour réserver le port approprié. Le jeton est obtenu lorsqu’un port est réservé en appelant CreatePersistentTcpPortReservation ou CreatePersistentUdpPortReservation.

localRedirectTargetPID

Identificateur de processus du processus hôte local qui va gérer le trafic vers l’adresse spécifiée dans localAddressAndPort. Cette valeur doit être définie pour que les modifications de redirection de bouclage soient acceptées par le moteur.

previousVersion

Version précédente des données de demande de connexion. Ce champ en lecture seule enregistre l’historique des modifications de la demande de connexion. Si les données de la demande de connexion n’ont pas été modifiées par un autre filtre PAM, previousVersion est défini sur NULL.

modifierFilterId

Valeur du membre FilterId du paramètre de filtre de la fonction classififn. Pour plus d’informations sur le membre FilterId , consultez FWPS_FILTER1.

localRedirectHandle

Handle de redirection que le pilote de légende a créé en appelant la fonction FwpsRedirectHandleCreate0 .

Note À compter de Windows 8, le localRedirectHandle doit être renseigné pour que la redirection fonctionne.
 

localRedirectContext

Zone de contexte du pilote de légende allouée par le pilote de légende en appelant la fonction ExAllocatePoolWithTag .

Note À compter de Windows 8, la propriété de la mémoire allouée à localRedirectContext sera prise en charge par le PAM et sera libérée lorsque le flux proxié sera supprimé.
 

localRedirectContextSize

Taille, en octets, de la zone de contexte fournie par la légende.

Note Pris en charge à partir de Windows 8.
 

Remarques

Le pilote de légende obtient cette structure en appelant le Fonction FwpsAcquireWritableLayerDataPointer0 , qui retourne un pointeur vers une structure FWPS_CONNECT_REQUEST0 via le paramètre writableLayerData . La fonction classifyFn peut modifier les paramètres de la demande de connexion, par exemple rediriger l’adresse ou le port de transport local ou distant vers une autre adresse ou port. Si elle modifie les paramètres de la demande de connexion, la fonction classifyFn doit effectuer les opérations suivantes :

  • Apportez toutes les modifications à la structure FWPS_CONNECT_REQUEST0 retournée par FwpsAcquireWritableLayerDataPointer0. Seuls les membres remoteAddressAndPort, portReservationToken, localRedirectTargetPID, localRedirectHandle, localRedirectContext et localRedirectContextSize peuvent être modifiés.
  • Appeler FwpsApplyModifiedLayerData0 avec le paramètre modifiedLayerData défini sur l’adresse de la structure FWPS_CONNECT_REQUEST0 , même si le pilote de légende n’a pas modifié les données. Cette valeur doit être identique à la valeur du paramètre modifiedLayerData retournée via FwpsAcquireWritableLayerDataPointer0.
Cette structure agit comme une liste liée qui contient un enregistrement de toutes les modifications apportées par d’autres pilotes de légende. Il existe des informations de version précédente si le membre previousVersion n’est pas NULL. Pour examiner l’historique complet des versions, le pilote de légende doit continuer à examiner le membre previousVersion de chaque structure de la liste jusqu’à ce qu’il soit défini sur NULL.

Configuration requise

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

Voir aussi

ExAllocatePoolWithTag

FWPS_FILTER1

FwpsAcquireWritableLayerDataPointer0

FwpsApplyModifiedLayerData0

FwpsRedirectHandleCreate0

SOCKADDR_STORAGE

Utilisation de la redirection de liaison ou de connexion

classFn