IPSEC_OFFLOAD_V2_SECURITY_ASSOCIATION structure (ndis.h)
[The IPsec Task Offload feature is deprecated and should not be used.]
The IPSEC_OFFLOAD_V2_SECURITY_ASSOCIATION structure specifies a single security association (SA).
Syntax
typedef struct _IPSEC_OFFLOAD_V2_SECURITY_ASSOCIATION {
ULONG Flags;
IPSEC_OFFLOAD_V2_OPERATION Operation;
IPSEC_OFFLOAD_V2_SPI_TYPE Spi;
IPSEC_OFFLOAD_V2_ALGORITHM_INFO AuthenticationAlgorithm;
IPSEC_OFFLOAD_V2_ALGORITHM_INFO EncryptionAlgorithm;
ULONG SequenceNumberHighOrder;
} IPSEC_OFFLOAD_V2_SECURITY_ASSOCIATION, *PIPSEC_OFFLOAD_V2_SECURITY_ASSOCIATION;
Members
Flags
A set of flags that can be combined with a bitwise OR operation. Otherwise, set this member to zero. The following values are valid:
IPSEC_OFFLOAD_V2_ESN_SA
Specifies ESN SA.
Operation
The IPsec operation for which the SA is to be used. The IPSEC_OFFLOAD_V2_OPERATION enumeration defines the supported operations.
Spi
A 32 bit security parameters index (SPI) for the SA.
AuthenticationAlgorithm
The integrity (authentication) algorithm for the SA, formatted as an IPSEC_OFFLOAD_V2_ALGORITHM_INFO structure.
EncryptionAlgorithm
The confidentiality (encryption/decryption) algorithm for the SA, formatted as an IPSEC_OFFLOAD_V2_ALGORITHM_INFO structure.
SequenceNumberHighOrder
The sequence number high-order extension. This sequence number high-order extension is defined in RFC 4304. This member represents the high-order portion of the sequence number that is not included in the IPsec header.
Remarks
The IPSEC_OFFLOAD_V2_SECURITY_ASSOCIATION structure is an element in the SecAssoc variable-length array in the IPSEC_OFFLOAD_V2_ADD_SA structure. The number of SAs in the IPSEC_OFFLOAD_V2_SECURITY_ASSOCIATION structure is specified in the NumExtHdrs member of IPSEC_OFFLOAD_V2_ADD_SA.
A SecAssoc element that is specified for use in processing authentication headers (AH) will have an operation type (the Operation member) of IPsecOffloadV2Ah and will have the authentication algorithm in the AuthenticationAlgorithm member. The SA will not have an encryption algorithm in the EncryptionAlgorithm member, so EncryptionAlgorithm will contain zeros.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Supported in NDIS 6.1 and later. |
Header | ndis.h (include Ndis.h) |