NDIS_IPSEC_OFFLOAD_V1_NET_BUFFER_LIST_INFO structure (ndis.h)
La structure NDIS_IPSEC_OFFLOAD_V1_NET_BUFFER_LIST_INFO spécifie les informations utilisées dans le déchargement des tâches de sécurité du protocole Internet (IPsec) à partir du transport TCP/IP vers un pilote miniport.
Syntaxe
typedef struct _NDIS_IPSEC_OFFLOAD_V1_NET_BUFFER_LIST_INFO {
union {
struct {
NDIS_HANDLE OffloadHandle;
} Transmit;
struct {
USHORT SaDeleteReq : 1;
USHORT CryptoDone : 1;
USHORT NextCryptoDone : 1;
USHORT Pad : 13;
USHORT CryptoStatus;
} Receive;
};
} NDIS_IPSEC_OFFLOAD_V1_NET_BUFFER_LIST_INFO, *PNDIS_IPSEC_OFFLOAD_V1_NET_BUFFER_LIST_INFO;
Membres
Transmit
Structure qui contient les membres suivants :
Transmit.OffloadHandle
Handle vers l’association de sécurité sortante (SA) pour un paquet qui n’a qu’une seule charge utile IPsec, que cette charge utile soit destinée à une connexion de transport (de bout en bout) ou à une connexion de tunnel.
Receive
Structure qui contient les membres suivants :
Receive.SaDeleteReq
Valeur USHORT qui, lorsqu’elle est définie, indique que le transport TCP/IP doit émettre le OID_TCP_TASK_IPSEC_DELETE_SA OID une fois pour supprimer l’AS entrante sur laquelle le paquet a été reçu et une fois de plus pour supprimer la SA sortante qui correspond à la SA entrante supprimée. La carte d’interface réseau (NIC) ne doit pas supprimer l’une de ces autorités de sécurité avant de recevoir la demande de OID_TCP_TASK_IPSEC_DELETE_SA correspondante.
Receive.CryptoDone
Valeur USHORT qui, lorsqu’elle est définie, indique qu’une carte réseau a effectué une vérification IPsec sur au moins une charge utile IPsec dans le paquet de réception. Lorsque cette valeur est effacée, elle indique que la carte réseau n’a pas effectué de vérification IPsec sur le paquet.
Receive.NextCryptoDone
Valeur USHORT qui, lorsqu’elle est définie, indique qu’une carte réseau a effectué une vérification IPsec sur les parties tunnel et transport du paquet de réception. CryptoDone doit également être défini dans ce cas. NextCryptoDone est défini uniquement si un paquet a à la fois des charges utiles IPsec de tunnel et de transport ; sinon, NextCryptoDone est défini sur zéro.
Receive.Pad
Réservé pour NDIS.
Receive.CryptoStatus
Résultat de la vérification par IPsec qu’une carte réseau s’est exécutée sur un paquet de réception. Ce résultat peut être décrit comme l’une des valeurs suivantes :
Remarques
Avant que le transport TCP/IP ne passe un paquet d’envoi sur lequel une carte réseau effectuera des tâches IPsec sur le pilote miniport de la carte réseau, le transport met à jour les informations IPsec dans la structure NDIS_IPSEC_OFFLOAD_V1_NET_BUFFER_LIST_INFO associée à la structure NET_BUFFER_LIST .
Plus précisément, le transport TCP/IP fournit une valeur pour le membre OffloadHandle dans la structure NDIS_IPSEC_OFFLOAD_V1_NET_BUFFER_LIST_INFO . La valeur OffloadHandle spécifie le handle de l’association de sécurité sortante (SA) pour un paquet qui n’a qu’une seule charge utile IPsec, que cette charge utile soit destinée à une association de sécurité de transport (de bout en bout) ou à une association de sécurité de tunnel. La valeur OffloadHandle fournie dans la structure NDIS_IPSEC_OFFLOAD_V1_NET_BUFFER_LIST_INFO a la même valeur que la valeur OffloadHandle fournie par le transport TCP/IP lorsqu’il a défini OID_TCP_TASK_IPSEC_ADD_SA pour demander au pilote miniport d’ajouter la SA sortante à la carte réseau.
Avant qu’un pilote miniport n’indique un paquet de réception qui a une ou plusieurs charges utiles IPsec, le pilote met à jour la structure NDIS_IPSEC_OFFLOAD_V1_NET_BUFFER_LIST_INFO associée à la structure NET_BUFFER_LIST comme suit :
- Si la carte réseau a effectué des vérifications IPsec sur au moins une charge utile IPsec dans le paquet, le pilote miniport définit le membre CryptoDone et indique les résultats des tests de validation de la somme de contrôle en spécifiant la valeur appropriée dans le membre CryptoStatus .
- Si la carte réseau a effectué une vérification IPsec sur les parties tunnel et transport d’un paquet de réception, le pilote miniport définit également le membre NextCryptoDone . NextCryptoDone est défini uniquement si un paquet a à la fois des charges utiles IPsec de tunnel et de transport ; sinon, NextCryptoDone est défini sur zéro.
- Si la carte réseau n’a pas effectué de vérifications IPsec sur le paquet, le pilote miniport ne définit pas CryptoDone ou NextCryptoDone et ne fournit pas de valeur CryptoStatus .
Pour définir et obtenir les informations IPsec, utilisez l’index IPsecOffloadV1NetBufferListInfo avec la macro NET_BUFFER_LIST_INFO . NET_BUFFER_LIST_INFO retourne la structure NDIS_IPSEC_OFFLOAD_V1_NET_BUFFER_LIST_INFO .
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Pris en charge dans NDIS 6.0. Pour NDIS 6.1 et versions ultérieures, utilisez NDIS_IPSEC_OFFLOAD_V2_NET_BUFFER_LIST_INFO. |
En-tête | ndis.h (inclure Ndis.h) |
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour