ENUM BATADV_PACKETTYPE(9)
π enum batadv_packettype(9) β the Kernel API Manual, bestie edition
okay so this is a page from the Kernel API Manual, and it's literally about enum batadv_packettype β the lil enum that says "hey, what KIND of packet is this?" for everything batman-adv wraps up and yeets across the mesh. iykyk π¦
β¨ NAME β¨
enum batadv_packettype β the types for batman-adv encapsulated packets. that's it, that's the whole vibe. packet type taxonomy, no cap π
πΈ SYNOPSIS πΈ
here's the whole enum, exactly as it lives, no edits from me π«Ά
enum batadv_packettype {
BATADV_IV_OGM ,
BATADV_BCAST ,
BATADV_CODED ,
BATADV_ELP ,
BATADV_OGM2 ,
BATADV_MCAST ,
BATADV_UNICAST ,
BATADV_UNICAST_FRAG ,
BATADV_UNICAST_4ADDR ,
BATADV_ICMP ,
BATADV_UNICAST_TVLV
};
π Constants π
bestie these are the members, and honestly each one is a main character in its own right:
BATADV_IV_OGMβ originator messages for B.A.T.M.A.N. IV πBATADV_BCASTβ broadcast packets carrying broadcast payloadBATADV_CODEDβ network coded packets (fancy β¨)BATADV_ELPβ echo location packets for B.A.T.M.A.N. VBATADV_OGM2β originator messages for B.A.T.M.A.N. V. yes there's a sequel, and yes it slayedBATADV_MCASTβ multicast packet with multiple destination addressesBATADV_UNICASTβ unicast packets carrying unicast payload trafficBATADV_UNICAST_FRAGβ unicast packets carrying a fragment of the original payload packet. it's giving "the rest is in another castle" π°BATADV_UNICAST_4ADDRβ unicast packet including the originator address of the senderBATADV_ICMPβ unicast packet like IP ICMP used for ping or tracerouteBATADV_UNICAST_TVLVβ unicast packet carrying TVLV containers
lowkey important: those are the descriptions straight from the source, i'm not out here making up packet behaviour. respect the enum π
π SEE ALSO π
the whole friend group, fr fr. first up the kernel file itself:
- Kernel file
./include/uapi/linux/batadv_packet.h
and then the iconique supporting cast:
batadv_tp_is_error(9)enum batadv_subtype(9)enum batadv_iv_flags(9)enum batadv_icmp_packettype(9)enum batadv_mcast_flags(9)enum batadv_tt_data_flags(9)enum batadv_vlan_flags(9)enum batadv_bla_claimframe(9)enum batadv_tvlv_type(9)struct batadv_bla_claim_dst(9)struct batadv_ogm_packet(9)struct batadv_ogm2_packet(9)struct batadv_elp_packet(9)struct batadv_icmp_header(9)struct batadv_icmp_packet(9)struct batadv_icmp_tp_packet(9)enum batadv_icmp_tp_subtype(9)struct batadv_icmp_packet_rr(9)struct batadv_unicast_packet(9)struct batadv_unicast_4addr_packet(9)struct batadv_frag_packet(9)struct batadv_bcast_packet(9)struct batadv_mcast_packet(9)struct batadv_coded_packet(9)struct batadv_unicast_tvlv_packet(9)struct batadv_tvlv_hdr(9)struct batadv_tvlv_gateway_data(9)struct batadv_tvlv_tt_vlan_data(9)struct batadv_tvlv_tt_data(9)struct batadv_tvlv_tt_change(9)struct batadv_tvlv_roam_adv(9)struct batadv_tvlv_mcast_data(9)struct batadv_tvlv_mcast_tracker(9)
that's the whole page bestie, go read the source and stay hydrated ππ
π· baiiii π· β this came out of ./include/uapi/linux, dated October 2026, and it's the enum batadv_packettype(9) page. mwah πβ
π¦ 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