rte_security_macsec_sa(3)
π rte_security_macsec_sa(3)
okay bestie, gather round, because this is a page from the Library Functions Manual and it's literally about one struct. no cap. one struct, ten-ish fields, and a whole lot of MACsec energy. let's get into it. π
β¨ NAME β¨
rte_security_macsec_sa β the MACsec secure association (SA) configuration struct, and yes she is the whole personality of this page π¦
πΈ SYNOPSIS πΈ
#include <rte_security.h>
π§ Data Fields
enum rte_security_macsec_direction dir
struct {
const uint8_t * data
uint16_t length
} key
uint8_t salt [RTE_SECURITY_MACSEC_SALT_LEN]
uint8_t an: 2
uint32_t ssci
uint32_t xpn
uint32_t next_pn
like, that's the roster. all of them. periodt. π
π DETAILED DESCRIPTION π
MACsec secure association (SA) configuration structure.
that's the vibe β it's the thing that holds all the config for a single MACsec SA. and bestie, it lives at Definition at line 352 of file rte_security.h. so if you're lost in the header forest, that's your map pin. π
π₯ FIELD DOCUMENTATION π₯
enum rte_security_macsec_direction dir
Direction of SA π β aka which way this association is pointing.
Definition at line 354 of file rte_security.h.
const uint8_t* data
pointer to key data π β literally just a pointer, she doesn't own the memory, she just knows where it's at.
Definition at line 357 of file rte_security.h.
uint16_t length
key length in bytes π β the size of the key data above, in bytes, obviously.
Definition at line 358 of file rte_security.h.
struct { ... } key
MACsec SA key for AES-GCM 128/256 β¨ β this is the anonymous struct wrapping data and length together, and it's specifically for the AES-GCM 128/256 flavors. slay.
uint8_t salt[RTE_SECURITY_MACSEC_SALT_LEN]
96-bit value distributed by key agreement protocol π§ β yeah, a literal salt, 96 bits of it, and it comes to you courtesy of the key agreement protocol. not you making it up. it's giving "trust the process".
Definition at line 361 of file rte_security.h.
uint8_t an
Association number to be used π’ β reminder that in the struct itself this is a bitfield: uint8_t an: 2, so she's only got 2 bits to work with. cozy.
Definition at line 363 of file rte_security.h.
uint32_t ssci
Short Secure Channel Identifier, to be used for XPN cases π β short, secure, and specifically for the XPN situations.
Definition at line 365 of file rte_security.h.
uint32_t xpn
Extended packet number π’β¨ β the extended one, obvi.
Definition at line 367 of file rte_security.h.
uint32_t next_pn
Packet number expected/ to be used for next packet of this SA π¦ β the PN that's expected, or that's gonna be used, for the next packet cruising through this SA.
Definition at line 369 of file rte_security.h.
π AUTHOR π
Generated automatically by Doxygen for DPDK from the source code. so like, not a human author, a robot author. we love an automated queen. π€π
bestie reminder: every field here is doing real work for MACsec, so don't be out here guessing at values βsaltcomes from the key agreement protocol, andssciis specifically for the XPN cases. iykyk. π
and that's a wrap on the DPDK manual, Version 25.11.3 β mwah, bye, go configure your secure associations responsibly π«ΆπΈ
π¦ where this page comes from
- ubuntu resolute: dpdk-doc 25.11.3-0ubuntu0.26.04.1 Β· BSD-3-Clause
- ubuntu stonking: dpdk-doc 25.11.3-1 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms