ENUM BATADV_NL_COMMANDS(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… enum batadv_nl_commands πŸ’…

okay so bestie, welcome to the Kernel API Manual moment of your life β€” this is enum batadv_nl_commands, and it's literally the whole guest list of netlink commands that batman-adv supports πŸ¦‹. every command the mesh stack will answer to lives in here, no cap. let's do a vibe check on all of them, in order, nothing skipped πŸ’–


✨ NAME ✨

enum batadv_nl_commands β€” the supported batman-adv netlink commands, aka the official group chat of mesh commands πŸ‘‘


🌸 SYNOPSIS 🌸

enum batadv_nl_commands {
    BATADV_CMD_UNSPEC ,
    BATADV_CMD_GET_MESH ,
    BATADV_CMD_GET_MESH_INFO ,
    BATADV_CMD_TP_METER ,
    BATADV_CMD_TP_METER_CANCEL ,
    BATADV_CMD_GET_ROUTING_ALGOS ,
    BATADV_CMD_GET_HARDIF ,
    BATADV_CMD_GET_HARDIFS ,
    BATADV_CMD_GET_TRANSTABLE_LOCAL ,
    BATADV_CMD_GET_TRANSTABLE_GLOBAL ,
    BATADV_CMD_GET_ORIGINATORS ,
    BATADV_CMD_GET_NEIGHBORS ,
    BATADV_CMD_GET_GATEWAYS ,
    BATADV_CMD_GET_BLA_CLAIM ,
    BATADV_CMD_GET_BLA_BACKBONE ,
    BATADV_CMD_GET_DAT_CACHE ,
    BATADV_CMD_GET_MCAST_FLAGS ,
    BATADV_CMD_SET_MESH ,
    BATADV_CMD_SET_HARDIF ,
    BATADV_CMD_GET_VLAN ,
    BATADV_CMD_SET_VLAN ,
    __BATADV_CMD_AFTER_LAST ,
    BATADV_CMD_MAX

};

look at her go 😭 twenty-something constants all lined up like a perfectly curated playlist ✨


πŸŽ€ Constants πŸŽ€

  • BATADV_CMD_UNSPEC β€” the unspecified command, whose entire job is catching errors 🚨 like the friend who exists purely to be the responsible one.
  • BATADV_CMD_GET_MESH β€” grab the attributes from mesh(if) πŸ’«.
  • BATADV_CMD_GET_MESH_INFO β€” literally just an alias for BATADV_CMD_GET_MESH 🫢 same energy, different name.
  • BATADV_CMD_TP_METER β€” kick off a tp meter session πŸ”₯ (throughput measurement time, bestie).
  • BATADV_CMD_TP_METER_CANCEL β€” nope, cancel that tp meter session πŸ’€.
  • BATADV_CMD_GET_ROUTING_ALGOS β€” query the list of routing algorithms 🧚 like asking "so what's the algorithm lineup rn?"
  • BATADV_CMD_GET_HARDIF β€” get attributes from a hardif of the current mesh(if) 🌈.
  • BATADV_CMD_GET_HARDIFS β€” alias for BATADV_CMD_GET_HARDIF πŸ’… iconic twin behaviour.
  • BATADV_CMD_GET_TRANSTABLE_LOCAL β€” query the list of local translations ⭐.
  • BATADV_CMD_GET_TRANSTABLE_GLOBAL β€” query the list of global translations 🌍.
  • BATADV_CMD_GET_ORIGINATORS β€” query the list of originators πŸ‘‘ the main characters of the mesh, fr fr.
  • BATADV_CMD_GET_NEIGHBORS β€” query the list of neighbours 🏘️ everybody's favourite people.
  • BATADV_CMD_GET_GATEWAYS β€” query the list of gateways πŸšͺ✨.
  • BATADV_CMD_GET_BLA_CLAIM β€” query the list of bridge loop avoidance claims πŸ™ˆ.
  • BATADV_CMD_GET_BLA_BACKBONE β€” query the list of bridge loop avoidance backbones 🦴.
  • BATADV_CMD_GET_DAT_CACHE β€” query the list of DAT cache entries πŸ“.
  • BATADV_CMD_GET_MCAST_FLAGS β€” query the list of multicast flags πŸ“‘.
  • BATADV_CMD_SET_MESH β€” set attributes for mesh(if) πŸ’œ the "we're making changes now" one.
  • BATADV_CMD_SET_HARDIF β€” set attributes for a hardif of the current mesh(if) πŸŽ€.
  • BATADV_CMD_GET_VLAN β€” get attributes from a VLAN of the current mesh(if) 🌸.
  • BATADV_CMD_SET_VLAN β€” set attributes for a VLAN of the current mesh(if) πŸ’–.
  • __BATADV_CMD_AFTER_LAST β€” internal use πŸ«₯ that's it, that's the whole description, mind your business.
  • BATADV_CMD_MAX β€” the highest used command number πŸ” the ceiling, the limit, the moment.

quick reminder bestie: __BATADV_CMD_AFTER_LAST is marked internal use, so don't go treating it like a public command okay 😭 it's not for you, it's for the kernel's own business.

πŸ” SEE ALSO πŸ”

  • Kernel file ./include/uapi/linux/batman_adv.h enum πŸ“„
  • batadv_tt_client_flags(9)
  • enum batadv_mcast_flags_priv(9)
  • enum batadv_gw_modes(9)
  • enum batadv_nl_attrs(9)
  • enum batadv_tp_meter_reason(9)
  • enum batadv_ifla_attrs(9)

go read those next, iykyk πŸ’…βœ¨


and that's the whole page, bestie 🫢 this lil' slice of the Kernel API Manual comes courtesy of ./include/uapi/linux and is dated October 2026 β€” so go forth, query some originators, cancel a tp meter, and slay πŸ’–πŸŒˆπŸ‘‘

πŸ“¦ where this page comes from