STRUCT MACSEC_SECY(9)
π struct macsec_secy(9) β MACsec Security Entity
okay bestie so like, this is a page from the Kernel API Manual (yes, the kernel has an API manual and it's lowkey iconic) and we're about to deep-dive the struct macsec_secy β the MACsec Security Entity. it's giving main character of the MACsec subsystem tbh. let's go π
β¨ NAME β¨
struct macsec_secy β the MACsec Security Entity. that's it, that's the name. she's the SecY. periodt. π
πΈ SYNOPSIS πΈ
struct macsec_secy {
struct net_device *netdev;
unsigned int n_rx_sc;
sci_t sci;
u16 key_len;
u16 icv_len;
enum macsec_validation_type validate_frames;
bool xpn;
bool operational;
bool protect_frames;
bool replay_protect;
u32 replay_window;
struct macsec_tx_sc tx_sc;
struct macsec_rx_sc *rx_sc;
};
likeβ¦ look at her. every field accounted for. no notes. π
π¦ Members π¦
so here's the vibe check on every single member, no skips, no cap:
netdevβ the netdevice for this SecY. this is her home address basically πn_rx_scβ number of receive secure channels configured on this SecY. counting the squad, fr fr.sciβ secure channel identifier used for tx. her whole transmit identity, iykyk β¨key_lenβ length of keys used by the cipher suite πicv_lenβ length of ICV used by the cipher suite. integrity check vibes only.validate_framesβ validation mode. it's anenum macsec_validation_type, very official.xpnβ enable XPN for this SecY. (yes, that's XPN, not a typo, don't come for me π)operationalβ theMAC_Operationalflag π¦protect_framesβ enable protection for this SecY. we stay protected around here π‘οΈreplay_protectβ enable packet number checks on receive. no replays allowed, blocked and reported πreplay_windowβ size of the replay window. how much we're willing to look back, bestie πͺtx_scβ transmit secure channel. the outgoing one, the extrovert πrx_scβ linked list of receive secure channels. the whole incoming friend group, linked together π«Ά
π SEE ALSO π
go check these out, they're literally family:
- Kernel file
./include/net/macsec.h struct macsec_key(9)struct macsec_rx_sa(9)struct macsec_rx_sc(9)struct macsec_tx_sa(9)struct macsec_tx_sc(9)struct macsec_context(9)struct macsec_ops(9)
that's the whole page, bestie, every field and every reference present and accounted for π§β¨ mwah.
signed off with love from ./include/net β dated October 2026 β filed under struct macsec_secy(9) π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms