STRUCT NFT_CHAIN_TYPE(9)
πΈ NAME πΈ
ok so this is the struct nft_chain_type page from the Kernel API Manual β it's literally the nf_tables chain type info struct, no cap π
β¨ SYNOPSIS β¨
struct nft_chain_type {
const char *name;
enum nft_chain_types type;
int family;
struct module *owner;
unsigned int hook_mask;
nf_hookfn *hooks[NFT_MAX_HOOKS];
int (*ops_register)(struct net *net, const struct nf_hook_ops *ops);
void (*ops_unregister)(struct net *net, const struct nf_hook_ops
*ops);
};
bestie look at that indentation on the last field, she's doing her best okay π but fr don't touch it, it's exactly how it lives in the header π«Ά
π Members π
okay so here's the whole cast, main character by main character π
nameβ the name of the type. literally its whole identity β¨typeβ the numeric identifier. it's giving "ID number" energy π’familyβ the address family. which family reunion is this πownerβ the module owner. someone's gotta claim it π«Άhook_maskβ the mask of valid hooks. only the valid ones get in π₯hooksβ an array of hook functions. yes bestie, an array πops_registerβ the base chain register function πops_unregisterβ the base chain unregister function. she takes it back π
π₯ SEE ALSO π₯
so there's a kernel file you should peek at: ./include/net/netfilter/nf_tables.h, and it's sitting next to an entire friend group of related pages β like, the whole netfilter extended fam is here π¦
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_type(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_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, go read them all, i'll wait π
ok that's the whole page, nothing skipped, every single one of those (9)s is accounted for and you KNOW i checked π€
and that's a wrap bestie!! source vibe check: this one comes to you from ./include/net/netfilter, dated October 2026, and it's still signed struct nft_chain_type(9) at the bottom because consistency is iconic πβ¨ go touch some kernel code, ily π«Άπ
π¦ 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