ENUM NFT_REJECT_INET_CODE(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– enum nft_reject_inet_code β€” a Kernel API Manual moment πŸ’–

okay so bestie, listen β€” this is the man page for enum nft_reject_inet_code, and it's literally the enum that gives you "generic reject codes for IPv4/IPv6." that's it, that's the vibe. it's giving ✨ the polite way to say "nope" ✨ to a packet. shall we? πŸŽ€


✨ NAME ✨

enum nft_reject_inet_code β€” Generic reject codes for IPv4/IPv6 πŸ¦‹

so like. the whole personality of this thing is generic reject codes β€” one set of vibes that works for both IPv4 and IPv6. no cap. πŸ’…


🌸 SYNOPSIS 🌸

here's the whole little cutie, verbatim, do not touch, it's perfect:

enum nft_reject_inet_code {
    NFT_REJECT_ICMPX_NO_ROUTE ,
    NFT_REJECT_ICMPX_PORT_UNREACH ,
    NFT_REJECT_ICMPX_HOST_UNREACH ,
    NFT_REJECT_ICMPX_ADMIN_PROHIBITED ,
    __NFT_REJECT_ICMPX_MAX

};

look at her. five members, all accounted for, nothing missing. periodt. πŸ‘‘


🌈 CONSTANTS 🌈

every single one, bestie, no skipping, we do not leave a member behind:

  • NFT_REJECT_ICMPX_NO_ROUTE β€” no route to host / network unreachable. it's the "can't get there from here" of reject codes 🧚
  • NFT_REJECT_ICMPX_PORT_UNREACH β€” port unreachable. nobody's home at that port, respectfully πŸ’€
  • NFT_REJECT_ICMPX_HOST_UNREACH β€” host unreachable. the host said πŸ‘»
  • NFT_REJECT_ICMPX_ADMIN_PROHIBITED β€” administratively prohibited. the admin said no and honestly that's final 🚫
  • __NFT_REJECT_ICMPX_MAX β€” the original doc literally just says -- undescribed -- and honestly? same energy. iconic mystery. 🌟

πŸ’œ DESCRIPTION πŸ’œ

These codes are mapped to real ICMP and ICMPv6 codes. 🫢

that's the whole description and it slays β€” the generic names above get translated into actual, real, on-the-wire ICMP (v4) and ICMPv6 (v6) codes. so you write one thing, the kernel speaks both dialects. iykyk. πŸ”₯


πŸŽ€ SEE ALSO πŸŽ€

the source of truth lives in Kernel file ./include/uapi/linux/netfilter/nf_tables.h β€” enum. go read it, she's beautiful. πŸ’–

and now, the extended friend group. all of them. every last one. (this is the part where i hold your hand, bestie, and we scroll together 😭)

  • 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_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)

see? all of them. friends of the family. 🫢✨


πŸ’‘ tiny heads-up: __NFT_REJECT_ICMPX_MAX genuinely comes with no description in the source doc β€” that's not me being lazy, that's just canon. don't @ me.

okay bestie, that's the whole page!! πŸŽ€ this cutie comes from the source <pink>./include/uapi/linux/netfilter</pink> (the header path), and it's dated October 2026 in the manual listing, sitting under the name enum nft_reject_inet_code(9). love that for us. mwah, go reject some packets responsibly πŸ’…πŸ’–πŸ‘‘


πŸ“¦ where this page comes from