NDIS_IPSEC_OFFLOAD_V2_HEADER_NET_BUFFER_LIST_INFO構造体 (ndis.h)
[IPsec タスク オフロード機能は非推奨であり、使用しないでください。]
NDIS_IPSEC_OFFLOAD_V2_HEADER_NET_BUFFER_LIST_INFO構造体は、 NET_BUFFER_LIST 構造体の OOB データ内の IPsec ヘッダー情報を指定します。
構文
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;
メンバー
Transmit
次のメンバーを含む 構造体。
Transmit.NextHeader
ESP トレーラーで実行される次のヘッダー値。
Transmit.PadLength
ESP 専用のペイロードの末尾に追加されるパディングの量 (バイト単位)。 PadLength は、大きな送信オフロード (LSO) の有無にかかわらず、IPsec オフロード パケットに指定されます。
Transmit.AhHeaderOffset
IP ヘッダーの先頭から AH ヘッダーまでのオフセット数。 AhHeaderOffset 値は、オフセットを表すために必要なビット数を減らすために、このオフセット (バイト単位) を 4 で割った値です。 AH ヘッダーは、少なくとも 4 バイト境界にアラインされていることに注意してください。
Transmit.EspHeaderOffset
IP ヘッダーの先頭から ESP ヘッダーまでのオフセット数。 EspHeaderOffset 値は、オフセットを表すために必要なビット数を減らすために、このオフセット (バイト単位) を 4 で割った値です。 ESP ヘッダーは、少なくとも 4 バイト境界に配置されることに注意してください。
Receive
次のメンバーを含む 構造体。
Receive.NextHeader
ESP トレーラーで実行される次のヘッダー値。
Receive.PadLength
ESP 専用のペイロードの末尾に追加されるパディングの量 (バイト単位)。 PadLength は、大きな送信オフロード (LSO) の有無にかかわらず、IPsec オフロード パケットに指定されます。
Receive.HeaderInfoSet
設定すると 、Receive 構造体のメンバーが有効であることを示す ULONG 値。 このメンバーが設定されていない場合、 Receive 構造体は無視されます。
注釈
NDIS_IPSEC_OFFLOAD_V2_HEADER_NET_BUFFER_LIST_INFO構造体の情報を使用すると、ミニポート ドライバーが送信パケットを簡単に解析できます。 NDIS_IPSEC_OFFLOAD_V2_HEADER_NET_BUFFER_LIST_INFOは、 NET_BUFFER_LIST 構造体内の IPsec ヘッダーのヘッダー オフセットと、次のヘッダーの場所とパディングの長さを指定します。
IPsec トンネル情報を設定して取得するには、 IPsecOffloadV2HeaderNetBufferListInfo インデックスと NET_BUFFER_LIST_INFO マクロを使用します。 NET_BUFFER_LIST_INFOは、NDIS_IPSEC_OFFLOAD_V2_HEADER_NET_BUFFER_LIST_INFO構造体を返します。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | NDIS 6.1 以降でサポートされています。 |
Header | ndis.h (Ndis.h を含む) |