batadv_forw_bcast_packet(9)
π batadv_forw_bcast_packet(9) π
okay so bestie, this is a page from the Kernel API Manual and it's literally all about batadv_forw_bcast_packet β the function that forwards and queues a broadcast packet. yes, that one. let's get into it π«Ά
β¨ NAME β¨
batadv_forw_bcast_packet β forward and queue a broadcast packet π
πΈ SYNOPSIS πΈ
int batadv_forw_bcast_packet (struct batadv_priv *bat_priv , struct
sk_buff *skb , unsigned long delay , bool own_packet );
no cap, that's the whole signature. four args, one int coming back atcha.
π ARGUMENTS π
bat_privβ the bat priv, bestie π like, the one holding all the mesh interface information. it's giving main character energy, everything lives in here.skbβ the broadcast packet you're adding. the actual payload moment β¨delayβ number of jiffies to wait before sending. yes, jiffies. not seconds, not vibes. lowkey important.own_packetβtrueif it's a self-generated broadcast packet π like, did you make this? be honest.
π¦ DESCRIPTION π¦
so here's the tea β β this thing transmits a broadcast packet either immediately, or, if a delay is given, after that delay. the way it just decides based on whether you passed a delay? iconic.
and that's not even all of it β it also queues additional retransmissions on wireless interfaces. so it's out here sending and setting up future sends at the same time. multi-tasking queen π
β RETURN β
NETDEV_TX_OKon success β slay, we transmitted πNETDEV_TX_BUSYon errors β not slay, something's off π
no in-between, periodt.
π SEE ALSO π
bestie there are so many related functions, buckle up:
Kernel file ./net/batman-adv/send.c plus:
batadv_send_skb_packet(9), batadv_send_broadcast_skb(9), batadv_send_unicast_skb(9), batadv_send_skb_to_orig(9), batadv_send_skb_push_fill_unicast(9), batadv_send_skb_prepare_unicast(9), batadv_send_skb_prepare_unicast_4addr(9), batadv_send_skb_unicast(9), batadv_send_skb_via_tt_generic(9), batadv_send_skb_via_gw(9), batadv_forw_packet_free(9), batadv_forw_packet_alloc(9), batadv_forw_packet_was_stolen(9), batadv_forw_packet_steal(9), batadv_forw_packet_list_steal(9), batadv_forw_packet_list_free(9), batadv_forw_packet_queue(9), batadv_forw_packet_bcast_queue(9), batadv_forw_packet_ogmv1_queue(9), batadv_forw_bcast_packet_to_list(9), batadv_forw_bcast_packet_if(9), batadv_send_no_broadcast(9), __batadv_forw_bcast_packet(9), batadv_send_bcast_packet(9), batadv_forw_packet_bcasts_left(9), batadv_forw_packet_bcasts_dec(9), batadv_forw_packet_is_rebroadcast(9), batadv_send_outstanding_bcast_packet(9), batadv_purge_outstanding_packets(9)
iykyk, it's a whole friend group π§
okay that's the page!! this one's sourced from ./net/batman-adv and dated October 2026 β go off, kernel docs ππ« bye bestie, ily, read your manpages π
π¦ 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