batadv_recv_mcast_packet(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… batadv_recv_mcast_packet(9) β€” the Kernel API Manual page, but make it make sense

okay so bestie, you've stumbled into the Kernel API Manual and the star of the show is batadv_recv_mcast_packet β€” it's the one that processes a received batman-adv multicast packet. that's literally the whole name. slay. 🌈


✨ NAME ✨

batadv_recv_mcast_packet β€” process received batman-adv multicast packet πŸŽ€

no cap, that's it. it takes the multicast packet that just landed and does the processing thing. very main character of it.


πŸ¦‹ SYNOPSIS πŸ¦‹

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

look at that signature. gorgeous. she returns an int, she takes a struct sk_buff * and a struct batadv_hard_iface *. periodt. πŸ’…


πŸ’– ARGUMENTS πŸ’–

  • skb β€” the received batman-adv multicast packet. yes, THE packet, the one we're here for. icon behavior.
  • recv_if β€” interface that the skb is received on. like, which hard interface this whole thing came in through. iykyk.

🌸 DESCRIPTION 🌸

okay so what actually happens: it parses the given, received batman-adv multicast packet. simple enough, right?

but then, depending on the contents of its TVLV, it forwards it and/or decapsulates it to hand it over to the mesh interface. so basically the TVLV is the vibe check β€” whatever's inside decides whether she forwards, whether she decapsulates, or both. 🧚 the "and/or" is doing so much work there and honestly? respect it.


⭐ RETURN ⭐

what you get back, bestie:

  • NET_RX_SUCCESS if the skb was locally received πŸŽ‰
  • NET_RX_DROP otherwise πŸ’€
  • or a negative errno code when the multicast tracker TVLV could not be processed 😭

so like, three possible timelines. pick your fighter.

ngl, if you get a negative errno back it's specifically because the multicast tracker TVLV couldn't be processed β€” that's not a "packet was meh" situation, that's a real problem with the TVLV itself. don't conflate them.

πŸ‘‘ SEE ALSO πŸ‘‘

bestie, this list is LONG and every single one of them is coming to the party. no skips. 🫢

Kernel file ./net/batman-adv/routing.c, and also:

like, go read them. or don't. i'm not your mom. 😌


πŸ“ the sign-off πŸ“

this lil page lives at ./net/batman-adv, dated October 2026, and it's page batadv_recv_mcast_packet(9) of the Kernel API Manual. go forth and process those multicast packets, bestie. mwah. πŸ’‹βœ¨

πŸ“¦ where this page comes from