ENUM NFT_OBJECT_ATTRIBUTES(9)
π enum nft_object_attributes(9) β from the Kernel API Manual, bestie
okay so this is a whole page about enum nft_object_attributes, which is the enum holding the netlink attributes for nf_tables stateful objects. and yes, that's a mouthful, but likeβ¦ it's literally just the little labeled slots you use to pass object info over netlink. iconic plumbing tbh π«Ά
β¨ NAME β¨
enum nft_object_attributes β nf_tables stateful object netlink attributes. that's it, that's the vibe. π
πΈ SYNOPSIS πΈ
here's the whole squad, in order, no cap:
enum nft_object_attributes {
NFTA_OBJ_UNSPEC ,
NFTA_OBJ_TABLE ,
NFTA_OBJ_NAME ,
NFTA_OBJ_TYPE ,
NFTA_OBJ_DATA ,
NFTA_OBJ_USE ,
NFTA_OBJ_HANDLE ,
NFTA_OBJ_PAD ,
NFTA_OBJ_USERDATA ,
__NFTA_OBJ_MAX
};
π CONSTANTS π
every member gets its moment, ok:
NFTA_OBJ_UNSPECβ literally no description in the source π« it's giving mystery. that's all the docs say.NFTA_OBJ_TABLEβ the name of the table that contains the expression (NLA_STRING). where the whole thing lives, basically.NFTA_OBJ_NAMEβ the name of this expression type (NLA_STRING). yes, "expression type", that's what it says, don't come for me πNFTA_OBJ_TYPEβ stateful object type (NLA_U32). what kind of object we're being.NFTA_OBJ_DATAβ stateful object data (NLA_NESTED). the actual payload, all nested up.NFTA_OBJ_USEβ number of references to this expression (NLA_U32). how many besties are pointing at it π―ββοΈNFTA_OBJ_HANDLEβ object handle (NLA_U64). a whole 64 bits of handle, slay.NFTA_OBJ_PADβ again, "-- undescribed --" π padding doing padding things, no further lore available.NFTA_OBJ_USERDATAβ user data (NLA_BINARY). your own little binary stash, do with it what you will.__NFTA_OBJ_MAXβ the last one, and also "-- undescribed --". it's the internal max marker, but the docs refuse to elaborate π
π¦ SEE ALSO π¦
so the kernel file this all comes from is ./include/uapi/linux/netfilter/nf_tables.h, and ngl the cross-reference list here is long. like, impressively long. but every single one of them is here because we don't skip anyone in this house π«Ά
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_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)
like I said. whole extended friend group. π
π§ quick vibe check: a couple of these members are literally marked -- undescribed -- in the source, so don't go asking me for more lore than exists. I'm not inventing canon.
π sign-off π
this beauty lives in ./include/uapi/linux/netfilter, dated October 2026, and its official government name is enum nft_object_attributes(9). go forth and nest your attributes correctly, bestie β you're gonna slay π₯β¨
π¦ 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