batadv_mcast_forw_push_hdr(9)
π batadv_mcast_forw_push_hdr(9) π
okay so bestie, this is a page from the Kernel API Manual β yes the kernel, yes the batman-adv one, we're doing networking today and honestly? iconic.
πΈ NAME πΈ
batadv_mcast_forw_push_hdr β push a multicast packet header onto an skb, that's the whole job, that's the vibe π
β¨ SYNOPSIS β¨
int batadv_mcast_forw_push_hdr (struct sk_buff *skb , unsigned short
tvlv_len );
like, one function, two args, no drama π«Ά
π ARGUMENTS π
skbβ the skb you're pushing the header onto. that's the main character of this whole operation fr.tvlv_lenβ the total TVLV length value, and it's the one you want set in the header. total. not partial. we're being precise here β¨
π¦ DESCRIPTION π¦
So what it does: it pushes a batman-adv multicast packet header onto the given skb, and it sets the provided total TVLV length value in it. That's it. That's the function. short and slay π
β οΈ okay but listen β the caller needs to make sure there's enough skb headroom available. that's on you, bestie, not on the function. the function is literally trusting you. don't betray it π
π₯ RETURN π₯
-ENOMEMβ if there is not enough skb headroom available. no cap, it will simply tell you π- otherwise, on success,
0β and that's the good ending π
π SEE ALSO π
The kernel file lives at ./net/batman-adv/multicast_forw.c β that's the home base π
and the whole friend group, literally the entire squad, in order:
batadv_mcast_forw_skb_push(9)batadv_mcast_forw_push_padding(9)batadv_mcast_forw_push_est_padding(9)batadv_mcast_forw_orig_entry(9)batadv_mcast_forw_push_dest(9)batadv_mcast_forw_push_dests_list(9)batadv_mcast_forw_push_tt(9)batadv_mcast_forw_push_want_all(9)batadv_mcast_forw_push_want_rtr(9)batadv_mcast_forw_scrape(9)batadv_mcast_forw_push_scrape_padding(9)batadv_mcast_forw_push_insert_padding(9)batadv_mcast_forw_push_adjust_padding(9)batadv_mcast_forw_push_dests(9)batadv_mcast_forw_push_tracker(9)batadv_mcast_forw_push_tvlvs(9)batadv_mcast_forw_scrub_dests(9)batadv_mcast_forw_shrink_fill(9)batadv_mcast_forw_shrink_pack_dests(9)batadv_mcast_forw_shrink_align_offset(9)batadv_mcast_forw_shrink_update_headers(9)batadv_mcast_forw_shrink_move_headers(9)batadv_mcast_forw_shrink_tracker(9)batadv_mcast_forw_packet(9)batadv_mcast_forw_tracker_tvlv_handler(9)batadv_mcast_forw_packet_hdrlen(9)batadv_mcast_forw_expand_head(9)batadv_mcast_forw_push(9)batadv_mcast_forw_mcsend(9)
like, that's the whole group chat right there, every single one got an invite π«Άβ¨
mwah π k bye β this was ./net/batman-adv, dated October 2026, and the page answers to the name batadv_mcast_forw_push_hdr(9). go push a header, bestie, you got this ππ
π¦ 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