NDIS_IPSEC_OFFLOAD_V2_HEADER_NET_BUFFER_LIST_INFO structure (ndis.h)
[The IPsec Task Offload feature is deprecated and should not be used.]
The NDIS_IPSEC_OFFLOAD_V2_HEADER_NET_BUFFER_LIST_INFO structure specifies IPsec header information in the OOB data of a NET_BUFFER_LIST structure.
Syntax
typedef struct _NDIS_IPSEC_OFFLOAD_V2_HEADER_NET_BUFFER_LIST_INFO {
union {
struct {
ULONG NextHeader : 8;
ULONG PadLength : 8;
ULONG AhHeaderOffset : 8;
ULONG EspHeaderOffset : 8;
} Transmit;
struct {
ULONG NextHeader : 8;
ULONG PadLength : 8;
ULONG HeaderInfoSet : 1;
} Receive;
};
} NDIS_IPSEC_OFFLOAD_V2_HEADER_NET_BUFFER_LIST_INFO, *PNDIS_IPSEC_OFFLOAD_V2_HEADER_NET_BUFFER_LIST_INFO;
Members
Transmit
A structure that contains the following members:
Transmit.NextHeader
The next header value that is carried in the ESP trailer.
Transmit.PadLength
The amount of padding, in bytes, that is added to the end of the payload for ESP only. PadLength is specified for IPsec offload packets with and without large send offload (LSO).
Transmit.AhHeaderOffset
The offset count from the beginning of the IP header to the AH header. The AhHeaderOffset value is this offset, in bytes, divided by 4 to reduce the number of bits that are required to represent the offset. Note that the AH header is, at minimum, aligned on 4-byte boundaries.
Transmit.EspHeaderOffset
The offset count from the beginning of the IP header to the ESP header. The EspHeaderOffset value is this offset, in bytes, divided by 4 to reduce the number of bits that are required to represent the offset. Note that the ESP header is, at minimum, aligned on 4-byte boundaries.
Receive
A structure that contains the following members:
Receive.NextHeader
The next header value that is carried in the ESP trailer.
Receive.PadLength
The amount of padding, in bytes, that is added to the end of the payload for ESP only. PadLength is specified for IPsec offload packets with and without large send offload (LSO).
Receive.HeaderInfoSet
A ULONG value that, when set, indicates the members of the Receive structure are valid. If this member is not set, the Receive structure is ignored.
Remarks
The information in the NDIS_IPSEC_OFFLOAD_V2_HEADER_NET_BUFFER_LIST_INFO structure makes it easy for the miniport driver to parse an outbound packet. NDIS_IPSEC_OFFLOAD_V2_HEADER_NET_BUFFER_LIST_INFO specifies the header offsets for IPsec headers in the NET_BUFFER_LIST structure as well as the location of the next header and the padding length.
To set and get the IPsec tunnel information, use the IPsecOffloadV2HeaderNetBufferListInfo index with the NET_BUFFER_LIST_INFO macro. NET_BUFFER_LIST_INFO returns an NDIS_IPSEC_OFFLOAD_V2_HEADER_NET_BUFFER_LIST_INFO structure.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Supported in NDIS 6.1 and later. |
Header | ndis.h (include Ndis.h) |
See also
Feedback
https://aka.ms/ContentUserFeedback.
Coming soon: Throughout 2024 we will be phasing out GitHub Issues as the feedback mechanism for content and replacing it with a new feedback system. For more information see:Submit and view feedback for