STRUCT BATADV_UNICAST_PACKET(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ¦‹ struct batadv_unicast_packet(9) πŸ¦‹

okay bestie, so this page lives in the Kernel API Manual and it's literally all about one little struct: struct batadv_unicast_packet β€” the unicast packet for network payload. yes, THAT one. come on, let's get into it πŸ’…


✨ NAME ✨

struct batadv_unicast_packet β€” unicast packet for network payload πŸŽ€


🌸 SYNOPSIS 🌸

here's the whole shape of it, no cap, exactly as it is:

struct batadv_unicast_packet {
    __u8 packet_type;
    __u8 version;
    __u8 ttl;
    __u8 ttvn;
    __u8 dest[ETH_ALEN];
 };

five lil fields, all __u8, plus that dest array. it's giving tiny but mighty, honestly 🫢


πŸ’– Members πŸ’–

every field, one by one, because we do NOT skip:

  • packet_type β€” the batman-adv packet type, and it's part of the general header. so it's not doing a solo career, it's in the group chat πŸ«‚
  • version β€” the batman-adv protocol version, also part of the general header. same deal, team player energy.
  • ttl β€” time to live for this packet, and yup, part of the general header too. the way all three of these are just living in the general header? iconic.
  • ttvn β€” translation table version number. that's the whole description, don't come for me, that's literally what it is πŸ’…
  • dest β€” originator destination of the unicast packet. i.e. where this thing is actually headed. main character destination, fr fr πŸ‘‘

πŸ”₯ SEE ALSO πŸ”₯

the kernel file for all this is ./include/uapi/linux/batadv_packet.h, and then there's the whole extended friend group β€” every single one of these is part of the family, so here's the complete list, no gatekeeping:

  • batadv_tp_is_error(9)
  • enum batadv_packettype(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_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)
bestie fr fr go read the others too, this struct does not exist in a vacuum okay 😭

so that's the whole page, start to finish πŸ’œ this one came out of ./include/uapi/linux, dated October 2026, and it's the struct batadv_unicast_packet(9) page β€” mwah, go forth and unicast responsibly πŸ§šβ€β™€οΈβœ¨

πŸ“¦ where this page comes from