ENUM NFT_FLOWTABLE_HOOK_ATTRIBUTES(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… NAME πŸ’…

okay so bestie, welcome to enum nft_flowtable_hook_attributes β€” aka the nf_tables flow table hook netlink attributes. that's the whole vibe. this is a kernel API manual page, and yes it's giving "tiny enum, big responsibilities" ✨


✨ SYNOPSIS ✨

like here's the actual shape of it, no cap:

enum nft_flowtable_hook_attributes {
    NFTA_FLOWTABLE_HOOK_UNSPEC ,
    NFTA_FLOWTABLE_HOOK_NUM ,
    NFTA_FLOWTABLE_HOOK_PRIORITY ,
    NFTA_FLOWTABLE_HOOK_DEVS ,
    __NFTA_FLOWTABLE_HOOK_MAX

};

πŸŽ€ Constants πŸŽ€

okay so each constant gets its moment, periodt:

  • NFTA_FLOWTABLE_HOOK_UNSPEC β€” literally -- undescribed -- in the source. the manpage said nothing about it so i'm not gonna invent lore. it's just there, main character energy with zero backstory πŸ™ˆ
  • NFTA_FLOWTABLE_HOOK_NUM β€” the netfilter hook number, typed as NLA_U32 πŸ’…
  • NFTA_FLOWTABLE_HOOK_PRIORITY β€” the netfilter hook priority, also NLA_U32 🌸
  • NFTA_FLOWTABLE_HOOK_DEVS β€” the input devices this flow table is bound to, and this one's typed NLA_NESTED πŸ¦‹
  • __NFTA_FLOWTABLE_HOOK_MAX β€” again, literally -- undescribed --. it's the max sentinel, it's mysterious, it's iconic, the manpage gives us nothing and we respect that πŸ’€

πŸ¦‹ SEE ALSO πŸ¦‹

kay so the source of truth lives right here, in the kernel file:

./include/uapi/linux/netfilter/nf_tables.h

and then there's the whole extended friend group, all of them manual pages, all of them section 9, all of them relevant:

  • enum nft_registers(9)
  • enum nft_verdicts(9)
  • enum nf_tables_msg_types(9)
  • enum nft_list_attributes(9)
  • enum nft_hook_attributes(9)
  • enum nft_table_flags(9)
  • enum nft_table_attributes(9)
  • enum nft_chain_attributes(9)
  • enum nft_rule_attributes(9)
  • enum nft_rule_compat_flags(9)
  • enum nft_rule_compat_attributes(9)
  • enum nft_set_flags(9)
  • enum nft_set_policies(9)
  • enum nft_set_desc_attributes(9)
  • enum nft_set_field_attributes(9)
  • enum nft_set_attributes(9)
  • enum nft_set_elem_flags(9)
  • enum nft_set_elem_attributes(9)
  • enum nft_set_elem_list_attributes(9)
  • enum nft_data_types(9)
  • enum nft_data_attributes(9)
  • enum nft_verdict_attributes(9)
  • enum nft_expr_attributes(9)
  • enum nft_immediate_attributes(9)
  • enum nft_bitwise_ops(9)
  • enum nft_bitwise_attributes(9)
  • enum nft_byteorder_ops(9)
  • enum nft_byteorder_attributes(9)
  • enum nft_cmp_ops(9)
  • enum nft_cmp_attributes(9)
  • enum nft_range_ops(9)
  • enum nft_range_attributes(9)
  • enum nft_lookup_attributes(9)
  • enum nft_dynset_attributes(9)
  • enum nft_payload_bases(9)
  • enum nft_payload_csum_types(9)
  • enum nft_payload_attributes(9)
  • enum nft_exthdr_op(9)
  • enum nft_exthdr_attributes(9)
  • enum nft_meta_keys(9)
  • enum nft_rt_keys(9)
  • enum nft_hash_types(9)
  • enum nft_hash_attributes(9)
  • enum nft_meta_attributes(9)
  • enum nft_rt_attributes(9)
  • enum nft_socket_attributes(9)
  • enum nft_ct_keys(9)
  • enum nft_ct_attributes(9)
  • enum nft_offload_attributes(9)
  • enum nft_limit_attributes(9)
  • enum nft_connlimit_attributes(9)
  • enum nft_counter_attributes(9)
  • enum nft_last_attributes(9)
  • enum nft_log_attributes(9)
  • enum nft_log_level(9)
  • enum nft_queue_attributes(9)
  • enum nft_quota_attributes(9)
  • enum nft_secmark_attributes(9)
  • enum nft_reject_types(9)
  • enum nft_reject_inet_code(9)
  • enum nft_reject_attributes(9)
  • enum nft_nat_types(9)
  • enum nft_nat_attributes(9)
  • enum nft_tproxy_attributes(9)
  • enum nft_masq_attributes(9)
  • enum nft_redir_attributes(9)
  • enum nft_dup_attributes(9)
  • enum nft_fwd_attributes(9)
  • enum nft_objref_attributes(9)
  • enum nft_gen_attributes(9)
  • enum nft_object_attributes(9)
  • enum nft_flowtable_flags(9)
  • enum nft_flowtable_attributes(9)
  • enum nft_osf_attributes(9)
  • enum nft_synproxy_attributes(9)
  • enum nft_devices_attributes(9)
  • enum nft_trace_attributes(9)
  • enum nft_ng_attributes(9)

like, that's the whole group chat, everyone showed up 🌈


ngl bestie, if you're poking at flow table hooks from userspace this page is your little cheat sheet β€” the attributes are the entire plot πŸ’–

and that's the page!! it ships from ./include/uapi/linux/netfilter, it's dated October 2026, and it will forever be known as enum nft_flo...k_attributes(9) β€” yes the title is truncated like that, that's just how it is, we love her anyway πŸ«ΆπŸŽ€

πŸ“¦ where this page comes from