ENUM NFT_IMMEDIATE_ATTRIBUTES(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

okay so this is a page from the Kernel API Manual (section 9, kernel devcorner ✨) and it's all about one lil enum that lives in the kernel headers. it's the netlink attribute list for the nf_tables immediate expression β€” yep, the thing that literally loads a value into a register. main character energy fr fr πŸ‘‘


🌸 SYNOPSIS 🌸

like, here's the whole thing, verbatim, no cap:

enum nft_immediate_attributes {
    NFTA_IMMEDIATE_UNSPEC ,
    NFTA_IMMEDIATE_DREG ,
    NFTA_IMMEDIATE_DATA ,
    __NFTA_IMMEDIATE_MAX

};

✨ CONSTANTS ✨

these are the members, and yes bestie i'm listing every single one 🫢

  • NFTA_IMMEDIATE_UNSPEC β€” so this one is literally marked -- undescribed -- in the source docs 😭 that's it, that's the whole description. iconic in a mysterious way tbh.
  • NFTA_IMMEDIATE_DREG β€” the destination register you're loading data into. type is NLA_U32. this is where the value goes 🎯
  • NFTA_IMMEDIATE_DATA β€” the actual data being loaded. type is NLA_NESTED: nft_data_attributes, so it's nested, inside it there's a whole other attribute party going on πŸͺ†
  • __NFTA_IMMEDIATE_MAX β€” also -- undescribed -- πŸ™ˆ it's the internal max marker, the sentinel vibe check at the end of the list.

πŸ‘‘ SEE ALSO πŸ‘‘

okay this list is LONG and i'm not skipping a single one because every single one of these is a real reference and skipping them would be a crime πŸ’€πŸ”ͺ

kernel file: ./include/uapi/linux/netfilter/nf_tables.h

and the whole squad:

  • 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_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_flowtable_hook_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)
ngl that's 78 refs, i counted, and every one of them is a real page you can pull up. go read them, bestie, become the netlink encyclopaedia you were always meant to be πŸ¦‹

and that's the page!! πŸŽ€ source lives under ./include/uapi/linux/netfilter, and this version is dated October 2026 β€” so yeah, future-coded manpage, slay. until next time, stay nested and stay NLA_U32 πŸ’œβ­

πŸ“¦ where this page comes from