CTX_SIZE(3)
๐ rte_pmd_cnxk_ipsec_inb_sa โ inbound IPsec SA, bestie edition ๐
okay so this is a page from the DPDK Library Functions Manual, and it's literally the struct that describes an Inbound IPsec SA ๐ก๏ธ โ like, it's giving "here's everything the hardware needs to know about one inbound security association". Stay with me, it's a big one but we're gonna slay it together ๐
โจ NAME โจ
rte_pmd_cnxk_ipsec_inb_sa โ the struct for an inbound IPsec SA
๐ธ SYNOPSIS ๐ธ
#include <rte_pmd_cnxk.h>
๐ Data Fields ๐
union {
} w0
union {
} w1
union {
} w2
uint64_t rsvd7
uint8_t cipher_key [RTE_PMD_CNXK_CTX_MAX_CKEY_LEN]
union {
} w8
union {
} w10
union rte_pmd_cnxk_ipsec_outer_ip_hdr outer_hdr
uint8_t hmac_opad_ipad [RTE_PMD_CNXK_CTX_MAX_OPAD_IPAD_LEN]
struct rte_pmd_cnxk_ipsec_inb_ctx_update_reg ctx
๐ฆ Detailed Description ๐ฆ
Inbound IPsec SA ๐
Defined at line 171 of file rte_pmd_cnxk.h โ that's the receipts, bestie, you can go look ๐
๐ฅ Field Documentation ๐ฅ
bestie there are SO many fields, but each one gets its moment. no skipping, no cap ๐ซถ
uint64_t ar_winโ AR window size ๐ซ
line 176 of rte_pmd_cnxk.h
uint64_t hard_life_decโ Hard life enable โณ
line 178 of rte_pmd_cnxk.h
uint64_t soft_life_decโ Soft life enable ๐ฐ๏ธ
line 180 of rte_pmd_cnxk.h
uint64_t count_glb_octetsโ Count global octets ๐ข
line 183 of rte_pmd_cnxk.h
uint64_t count_glb_pktsโ Count global pkts ๐ฆ
line 185 of rte_pmd_cnxk.h
uint64_t count_mib_bytesโ Count bytes ๐งฎ
line 187 of rte_pmd_cnxk.h
uint64_t count_mib_pktsโ Count pkts ๐จ
line 190 of rte_pmd_cnxk.h
uint64_t hw_ctx_offโ HW context offset ๐งญ
line 192 of rte_pmd_cnxk.h
uint64_t ctx_idโ Context ID ๐
line 195 of rte_pmd_cnxk.h
uint64_t orig_pkt_fabsโ Original packet free absolute ๐๏ธ
line 198 of rte_pmd_cnxk.h
uint64_t orig_pkt_freeโ Original packet free ๐งน
line 200 of rte_pmd_cnxk.h
uint64_t pkindโ PKIND for second pass ๐
line 202 of rte_pmd_cnxk.h
uint64_t et_ovrwrโ Ether type overwrite โ๏ธ
line 206 of rte_pmd_cnxk.h
uint64_t pkt_outputโ Packet output type ๐ค
line 208 of rte_pmd_cnxk.h
uint64_t pkt_formatโ Packet format type ๐งพ
line 210 of rte_pmd_cnxk.h
uint64_t defrag_optโ Defrag option ๐งฉ
line 212 of rte_pmd_cnxk.h
uint64_t x2p_dstโ Reserved for X2P dest ๐ ฟ๏ธ
line 214 of rte_pmd_cnxk.h
uint64_t ctx_push_sizeโ Context push size ๐
line 217 of rte_pmd_cnxk.h
uint64_t ctx_hdr_sizeโ Context header size ๐
line 221 of rte_pmd_cnxk.h
uint64_t aop_validโ AOP enable โ
line 223 of rte_pmd_cnxk.h
uint64_t ctx_sizeโ Context size ๐๏ธ
line 226 of rte_pmd_cnxk.h
๐ union { ... } w0 โ Word0
uint64_t orig_pkt_auraโ Original packet aura โจ
line 235 of rte_pmd_cnxk.h
uint64_t orig_pkt_foffโ Original packet free offset ๐
line 238 of rte_pmd_cnxk.h
uint64_t cookieโ SA cookie ๐ช
line 240 of rte_pmd_cnxk.h
๐ union { ... } w1 โ Word1
okay this union is the main character, look at all these ๐
uint64_t validโ SA valid โ
line 249 of rte_pmd_cnxk.h
uint64_t dirโ SA direction ๐งญ
line 251 of rte_pmd_cnxk.h
uint64_t ipsec_modeโ IPsec mode ๐ง
line 255 of rte_pmd_cnxk.h
uint64_t ipsec_protocolโ IPsec protocol ๐
line 257 of rte_pmd_cnxk.h
uint64_t aes_key_lenโ AES key length ๐
line 259 of rte_pmd_cnxk.h
uint64_t enc_typeโ Encryption algo ๐
line 262 of rte_pmd_cnxk.h
uint64_t life_unitโ Soft life and hard life unit โฑ๏ธ
line 264 of rte_pmd_cnxk.h
uint64_t auth_typeโ Authentication algo ๐ชช
line 266 of rte_pmd_cnxk.h
uint64_t encap_typeโ Encapsulation type ๐ฆ
line 269 of rte_pmd_cnxk.h
uint64_t et_ovrwr_ddr_enโ Ether type override enable โ๏ธ
line 271 of rte_pmd_cnxk.h
uint64_t esn_enโ ESN enable ๐ข
line 273 of rte_pmd_cnxk.h
uint64_t tport_l4_incr_csumโ Transport mode L4 checksum incrementally update ๐งฎ
line 275 of rte_pmd_cnxk.h
uint64_t ip_hdr_verifyโ Outer IP header verification ๐
line 277 of rte_pmd_cnxk.h
uint64_t udp_ports_verifyโ UDP encapsulation ports verification ๐ช
line 279 of rte_pmd_cnxk.h
uint64_t l3hdr_on_errโ Return 64B of L2/L3 header on error ๐ญ
line 282 of rte_pmd_cnxk.h
uint64_t spiโ SPI ๐ท๏ธ
line 287 of rte_pmd_cnxk.h
๐ union { ... } w2 โ Word 2
(no extra field docs under this one, it just vibes ๐ธ)
โญ The rest of the words โญ
uint64_t rsvd7โ Word3 ๐งฑ
line 293 of rte_pmd_cnxk.h
uint8_t cipher_key[RTE_PMD_CNXK_CTX_MAX_CKEY_LEN]โ Word4 - Word7 ๐
line 296 of rte_pmd_cnxk.h
uint8_t salt[4]โ IV salt ๐ง
line 303 of rte_pmd_cnxk.h
- union
{ ... }w8โ Word8 - Word9 ๐งฉ
line 306-ish energy, this one holds the ports:
uint64_t udp_src_portโ UDP encapsulation source port ๐ช
line 314 of rte_pmd_cnxk.h
uint64_t udp_dst_portโ UDP encapsulation destination port ๐ช
line 316 of rte_pmd_cnxk.h
- union
{ ... }w10โ Word10 ๐งฑ union rte_pmd_cnxk_ipsec_outer_ip_hdr outer_hdrโ Word11 - Word14 ๐
line 322 of rte_pmd_cnxk.h
uint8_t hmac_opad_ipad[RTE_PMD_CNXK_CTX_MAX_OPAD_IPAD_LEN]โ Word15 - Word30 ๐ชช
line 325 of rte_pmd_cnxk.h
struct rte_pmd_cnxk_ipsec_inb_ctx_update_reg ctxโ Word31 - Word100 ๐๏ธ
line 328 of rte_pmd_cnxk.h
๐ Author ๐
Generated automatically by Doxygen for DPDK from the source code ๐ค (yes bestie, a robot wrote this one, and honestly? it ate)
and that's the whole page, periodt ๐ thanks for reading all 100 words with me, iykyk ๐ซถ
โญ DPDK, Version 26.03.0 โ rte_pmd_cn...psec_inb_sa(3) โ mwah, see u in the next manpage bestie ๐๐๐ฆ
๐ฆ where this page comes from
- nixos 26.05: dpdk 26.03
- nixpkgs unstable: dpdk 26.03
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms