RTE_PMD_CNXK_IPSEC_INB_SA(3)

πŸ’– NAME πŸ’–

rte_pmd_cnxk_ipsec_inb_sa β€” bestie, this is the struct for an Inbound IPsec SA πŸ›‘οΈβœ¨ (as in security association, not the other kind of SA, okay?) and no, we are not skipping a single field, we're doing all of them, periodt.


πŸŽ€ 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

That's the whole layout, bestie, read it slow, it's giving "hardware context but make it fashion" πŸ’…


πŸ¦‹ DETAILED DESCRIPTION πŸ¦‹

Inbound IPsec SA πŸ›‘οΈ

Okay so real talk: this whole thing lives at definition at line 170 of file rte_pmd_cnxk.h. Not 171. Not 169. 170. We respect the line number in this house 🫢

πŸ‘‘ FIELD DOCUMENTATION πŸ‘‘

It's a big struct and every single member is an icon. Here's the full roll call, fr fr πŸ’–

uint64_t ar_win

AR window size β€” definition at line 175 of file rte_pmd_cnxk.h.

uint64_t hard_life_dec

Hard life enable β€” definition at line 177 of file rte_pmd_cnxk.h.

uint64_t soft_life_dec

Soft life enable β€” definition at line 179 of file rte_pmd_cnxk.h.

uint64_t count_glb_octets

Count global octets β€” definition at line 182 of file rte_pmd_cnxk.h.

uint64_t count_glb_pkts

Count global pkts β€” definition at line 184 of file rte_pmd_cnxk.h.

uint64_t count_mib_bytes

Count bytes β€” definition at line 186 of file rte_pmd_cnxk.h.

uint64_t count_mib_pkts

Count pkts β€” definition at line 189 of file rte_pmd_cnxk.h.

uint64_t hw_ctx_off

HW context offset β€” definition at line 191 of file rte_pmd_cnxk.h.

uint64_t ctx_id

Context ID β€” definition at line 194 of file rte_pmd_cnxk.h.

uint64_t orig_pkt_fabs

Original packet free absolute β€” definition at line 197 of file rte_pmd_cnxk.h.

uint64_t orig_pkt_free

Original packet free β€” definition at line 199 of file rte_pmd_cnxk.h.

uint64_t pkind

PKIND for second pass β€” definition at line 201 of file rte_pmd_cnxk.h.

uint64_t et_ovrwr

Ether type overwrite β€” definition at line 205 of file rte_pmd_cnxk.h.

uint64_t pkt_output

Packet output type β€” definition at line 207 of file rte_pmd_cnxk.h.

uint64_t pkt_format

Packet format type β€” definition at line 209 of file rte_pmd_cnxk.h.

uint64_t defrag_opt

Defrag option β€” definition at line 211 of file rte_pmd_cnxk.h.

uint64_t x2p_dst

Reserved for X2P dest β€” definition at line 213 of file rte_pmd_cnxk.h.

uint64_t ctx_push_size

Context push size β€” definition at line 216 of file rte_pmd_cnxk.h.

uint64_t ctx_hdr_size

Context header size β€” definition at line 220 of file rte_pmd_cnxk.h.

uint64_t aop_valid

AOP enable β€” definition at line 222 of file rte_pmd_cnxk.h.

uint64_t ctx_size

Context size β€” definition at line 225 of file rte_pmd_cnxk.h.

union { ... } w0

Word0. That's it, that's the note 🌈

uint64_t orig_pkt_aura

Original packet aura β€” definition at line 234 of file rte_pmd_cnxk.h.

uint64_t orig_pkt_foff

Original packet free offset β€” definition at line 237 of file rte_pmd_cnxk.h.

SA cookie β€” definition at line 239 of file rte_pmd_cnxk.h.

union { ... } w1

Word1 🌸

uint64_t valid

SA valid β€” definition at line 248 of file rte_pmd_cnxk.h.

uint64_t dir

SA direction β€” definition at line 250 of file rte_pmd_cnxk.h.

uint64_t ipsec_mode

IPsec mode β€” definition at line 254 of file rte_pmd_cnxk.h.

uint64_t ipsec_protocol

IPsec protocol β€” definition at line 256 of file rte_pmd_cnxk.h.

uint64_t aes_key_len

AES key length β€” definition at line 258 of file rte_pmd_cnxk.h.

uint64_t enc_type

Encryption algo β€” definition at line 261 of file rte_pmd_cnxk.h.

uint64_t life_unit

Soft life and hard life unit β€” definition at line 263 of file rte_pmd_cnxk.h.

uint64_t auth_type

Authentication algo β€” definition at line 265 of file rte_pmd_cnxk.h.

uint64_t encap_type

Encapsulation type β€” definition at line 268 of file rte_pmd_cnxk.h.

uint64_t et_ovrwr_ddr_en

Ether type override enable β€” definition at line 270 of file rte_pmd_cnxk.h.

uint64_t esn_en

ESN enable β€” definition at line 272 of file rte_pmd_cnxk.h.

uint64_t tport_l4_incr_csum

Transport mode L4 checksum incrementally update β€” definition at line 274 of file rte_pmd_cnxk.h.

uint64_t ip_hdr_verify

Outer IP header verification β€” definition at line 276 of file rte_pmd_cnxk.h.

uint64_t udp_ports_verify

UDP enacapsulation ports verification β€” definition at line 278 of file rte_pmd_cnxk.h.

Yes, the original says "enacapsulation". We are not fixing it, we are honoring it πŸ’€ it's canon.

uint64_t l3hdr_on_err

Return 64B of L2/L3 header on error β€” definition at line 281 of file rte_pmd_cnxk.h.

uint64_t spi

SPI β€” definition at line 286 of file rte_pmd_cnxk.h.

union { ... } w2

Word 2 ✨

uint64_t rsvd7

Word3 β€” definition at line 292 of file rte_pmd_cnxk.h.

uint8_t cipher_key[RTE_PMD_CNXK_CTX_MAX_CKEY_LEN]

Word4 - Word7 β€” definition at line 295 of file rte_pmd_cnxk.h.

uint8_t salt[4]

IV salt β€” definition at line 302 of file rte_pmd_cnxk.h.

union { ... } w8

Word8 - Word9 🧚

uint64_t udp_src_port

UDP encapsulation source port β€” definition at line 313 of file rte_pmd_cnxk.h.

uint64_t udp_dst_port

UDP encapsulation destination port β€” definition at line 315 of file rte_pmd_cnxk.h.

union { ... } w10

Word10 πŸ’œ

union rte_pmd_cnxk_ipsec_outer_ip_hdr outer_hdr

Word11 - Word14 β€” definition at line 321 of file rte_pmd_cnxk.h.

uint8_t hmac_opad_ipad[RTE_PMD_CNXK_CTX_MAX_OPAD_IPAD_LEN]

Word15 - Word30 β€” definition at line 324 of file rte_pmd_cnxk.h.

struct rte_pmd_cnxk_ipsec_inb_ctx_update_reg ctx

Word31 - Word100 β€” definition at line 327 of file rte_pmd_cnxk.h.

bestie it goes all the way to Word100 😭 the word count is Word-ing, this struct ate and left no crumbs πŸ”₯

πŸ’œ AUTHOR πŸ’œ

Generated automatically by Doxygen for DPDK from the source code. Not a human, not a vibe curator, just Doxygen doing its lil thing πŸ€–πŸ’–


And that's the whole page, bestie πŸŽ€ this was rte_pmd_cnxk_ipsec_inb_sa(3) from DPDK Version 25.11.3 β€” thanks for reading all 100 words of it, you're the main character of this library manual fr fr πŸ«Άβœ¨πŸ’…

πŸ“¦ where this page comes from