NDIS_IPSEC_OFFLOAD_V2_NET_BUFFER_LIST_INFO structure (ndis.h)
[La fonctionnalité de déchargement de tâche IPsec est déconseillée et ne doit pas être utilisée.]
La structure NDIS_IPSEC_OFFLOAD_V2_NET_BUFFER_LIST_INFO spécifie les informations utilisées dans le déchargement des tâches de déchargement de sécurité du protocole Internet version 2 (IPsecOV2) du transport TCP/IP vers une carte réseau.
Syntaxe
typedef struct _NDIS_IPSEC_OFFLOAD_V2_NET_BUFFER_LIST_INFO {
union {
struct {
PVOID OffloadHandle;
} Transmit;
struct {
ULONG SaDeleteReq : 1;
ULONG CryptoDone : 1;
ULONG NextCryptoDone : 1;
ULONG Reserved : 13;
ULONG CryptoStatus : 16;
} Receive;
};
} NDIS_IPSEC_OFFLOAD_V2_NET_BUFFER_LIST_INFO, *PNDIS_IPSEC_OFFLOAD_V2_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 pour une connexion de transport (de bout en bout).
Receive
Structure qui contient les membres suivants :
Receive.SaDeleteReq
Valeur ULONG qui, lorsqu’elle est définie, indique que le transport TCP/IP doit émettre le OID_TCP_TASK_IPSEC_OFFLOAD_V2_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_OFFLOAD_V2_DELETE_SA correspondante.
Receive.CryptoDone
Valeur ULONG 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 ULONG 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.Reserved
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 :
CryptoStatus.CRYPTO_SUCCESS
Le paquet a été correctement déchiffré, si nécessaire, et les sommes de contrôle de l’en-tête d’authentification (AH), encapsulant les sommes de contrôle ESP (Security Payload), ou les deux sommes de contrôle dans le paquet ont été validées.
CryptoStatus.CRYPTO_GENERIC_ERROR
Le paquet a échoué le case activée IPsec pour une raison non spécifiée.
CryptoStatus.CRYPTO_TRANSPORT_AH_AUTH_FAILED
La somme de contrôle AH pour la partie transport du paquet n’était pas valide.
CryptoStatus.CRYPTO_TRANSPORT_ESP_AUTH_FAILED
La somme de contrôle ESP pour la partie transport du paquet n’était pas valide.
CryptoStatus.CRYPTO_TUNNEL_AH_AUTH_FAILED
La somme de contrôle AH pour la partie tunnel du paquet n’était pas valide.
CryptoStatus.CRYPTO_TUNNEL_ESP_AUTH_FAILED
La somme de contrôle ESP pour la partie tunnel du paquet n’était pas valide.
CryptoStatus.CRYPTO_INVALID_PACKET_SYNTAX
La longueur du paquet de réception n’est pas valide. Par exemple, la longueur totale dans l’en-tête IP n’est pas suffisante pour inclure tous les champs et en-têtes pour AH/ESP.
CryptoStatus.CRYPTO_INVALID_PROTOCOL
Les protocoles IPsec spécifiés dans l’AS sur lequel le paquet a été reçu ne correspondent pas aux protocoles IPsec trouvés dans le paquet. Par exemple, cette erreur se produit si l’AS sur laquelle le paquet a été reçu spécifie le protocole AH, mais que le paquet ne contenait qu’un en-tête ESP.
Remarques
Avant que le transport TCP/IP passe un paquet sortant à une carte réseau pour le traitement du déchargement, le transport spécifie les informations IPsec dans la structure NDIS_IPSEC_OFFLOAD_V2_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_V2_NET_BUFFER_LIST_INFO. La valeur OffloadHandle spécifie le handle de la SA sortante pour un paquet qui n’a qu’une seule charge utile IPsec, que cette charge utile soit destinée à une SA de transport ou à une SA de tunnel. La valeur OffloadHandle fournie dans la structure NDIS_IPSEC_OFFLOAD_V2_NET_BUFFER_LIST_INFO a la même valeur que la valeur OffloadHandle qui a été signalée au transport TCP/IP lorsque le pilote miniport a correctement ajouté un ensemble d’autorités de sécurité à une carte réseau. Toutes les autorités de sécurité ont été ajoutées à la carte réseau lorsque le pilote miniport a répondu à un OID_TCP_TASK_IPSEC_OFFLOAD_V2_ADD_SA demande.
Avant qu’un pilote miniport n’indique un paquet de réception contenant une ou plusieurs charges utiles IPsec, le pilote spécifie des informations IPsec dans la structure NDIS_IPSEC_OFFLOAD_V2_NET_BUFFER_LIST_INFO associée à la structure NET_BUFFER_LIST .
Pour définir et obtenir les informations IPsec, utilisez l’index IPsecOffloadV2NetBufferListInfo avec la macro NET_BUFFER_LIST_INFO . NET_BUFFER_LIST_INFO retourne la structure NDIS_IPSEC_OFFLOAD_V2_NET_BUFFER_LIST_INFO.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Pris en charge dans NDIS 6.1 et versions ultérieures. |
En-tête | ndis.h (inclure Ndis.h) |
Voir aussi
NDIS_IPSEC_OFFLOAD_V1_NET_BUFFER_LIST_INFO
OID_TCP_TASK_IPSEC_OFFLOAD_V2_ADD_SA OID_TCP_TASK_IPSEC_OFFLOAD_V2_DELETE_SACommentaires
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