batadv_recv_...icast_packet(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… batadv_recv_...icast_packet(9)

okay so this is a page straight out of the Kernel API Manual, and bestie, the title's literally truncated with ... in the middle β€” that's just how the section header renders, the real star of the show is batadv_recv_unhandled_unicast_packet. she's giving mysterious, she's giving ellipsis, she's iconic πŸ’–


✨ NAME ✨

batadv_recv_unhandled_unicast_packet β€” literally just receive and process packets which are in the unicast number space but not yet known to the implementation. like, the packets showed up in the unicast zone and nobody in the codebase has been introduced to them yet 🫢


πŸ¦‹ SYNOPSIS πŸ¦‹

int batadv_recv_unhandled_unicast_packet (struct sk_buff *skb , struct
batadv_hard_iface *recv_if );

that's the whole vibe. two args, one int coming back at you. slay πŸ’…


πŸŽ€ ARGUMENTS πŸŽ€

  • skb β€” the unicast tvlv packet we're supposed to process. that's her. that's the package πŸ“¦
  • recv_if β€” pointer to the interface this packet was received on. like, which door did she walk in through πŸšͺ✨

πŸ”₯ RETURN πŸ”₯

NET_RX_SUCCESS on success, or NET_RX_DROP in case of failure. no in-between, no "it's complicated" β€” you either ate or you dropped it πŸ’€


🌸 SEE ALSO 🌸

okay buckle up bestie, this list is long β€” it's the entire routing.c friend group and they all pull up together, no cap:

Kernel file ./net/batman-adv/routing.c β€” _batadv_update_route(9), batadv_update_route(9), batadv_window_protected(9), batadv_check_management_packet(9), batadv_skb_decrement_ttl(9), batadv_recv_my_icmp_packet(9), batadv_recv_icmp_ttl_exceeded(9), batadv_recv_icmp_packet(9), batadv_check_unicast_packet(9), batadv_last_bonding_get(9), batadv_last_bonding_replace(9), batadv_find_router(9), batadv_route_unicast_packet(9), batadv_reroute_unicast_packet(9), batadv_check_unicast_ttvn(9), batadv_recv_unicast_packet(9), batadv_recv_unicast_tvlv(9), batadv_recv_frag_packet(9), batadv_recv_bcast_packet(9), batadv_recv_mcast_packet(9)

no seriously, read them all, they're all on the same block for a reason πŸ§šπŸ’œ


lowkey reminder: those (9) suffixes are load-bearing, don't go editing them out, iykyk 🌈

and that's the page!! brought to you by ./net/batman-adv, dated October 2026, from the Kernel API Manual besties β€” mwah, go read some source code πŸ’–πŸŽ€πŸ¦‹

πŸ“¦ where this page comes from