STRUCT NFT_SET_EXT_TYPE(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct nft_set_ext_type(9)

okay so bestie, welcome to the Kernel API Manual page for struct nft_set_ext_type β€” yes it's a whole page for a two-field struct and honestly? iconic. it's the set extension type, and it's lowkey the little blueprint that tells netfilter how big an extension chunk is and how it likes to be aligned. small struct, main character energy. 🌸


✨ NAME ✨

struct nft_set_ext_type β€” the set extension type, fr fr πŸ’–


πŸ¦‹ SYNOPSIS πŸ¦‹

struct nft_set_ext_type {
    u8 len;
    u8 align;
 };

that's it. that's the whole thing. two u8s and a dream 😭


πŸŽ€ Members πŸŽ€

  • len β€” the fixed part length of the extension. like, how many bytes the extension's fixed chunk takes up. no cap, that's literally it πŸ’…
  • align β€” the alignment requirements of the extension. this is the vibe check for where it's allowed to sit in memory ✨
ngl, both fields are u8, so keep your values smol and blessed πŸ™ˆ

🌈 SEE ALSO 🌈

the whole friend group, gathered for you 🫢 β€” all of these are in the kernel file ./include/net/netfilter/nf_tables.h:

struct nft_verdict(9), struct nft_regs(9), struct nft_ctx(9), struct nft_userdata(9), struct nft_set_elem(9), enum nft_iter_type(9), struct nft_set_desc(9), enum nft_set_class(9), struct nft_set_estimate(9), struct nft_expr(9), struct nft_set_ops(9), struct nft_set_type(9), struct nft_set(9), struct nft_set_binding(9), enum nft_set_extensions(9), struct nft_set_ext_tmpl(9), struct nft_set_ext(9), struct nft_expr_type(9), struct nft_expr_ops(9), struct nft_rule(9), struct nft_chain_validate_state(9), struct nft_chain(9), struct nft_chain_type(9), struct nft_base_chain(9), struct nft_table(9), struct nft_object_hash_key(9), struct nft_object(9), struct nft_object_type(9), struct nft_object_ops(9), struct nft_flowtable(9), struct nft_traceinfo(9), struct nft_trans(9), struct nft_trans_hook(9), struct nft_trans_binding(9)

like, the entire nf_tables cinematic universe is right there. go read it, iykyk πŸ‘‘


and that's the page!! πŸŽ€ source lives at ./include/net/netfilter, dated October 2026, and it's all struct nft_set_ext_type(9) β€” slay, go touch some kernel code, ily πŸ’œπŸ”₯

πŸ“¦ where this page comes from