batadv_mcas..._ipv4_update(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… batadv_mcast_want_ipv4_update β€” from the Kernel API Manual πŸŽ€

okay so bestie, we're diving into batadv_mcast_want_ipv4_update(9) today and honestly? it's giving "small function, big responsibilities". it lives in the Kernel API Manual, so you know it's legit. let's get into it ✨


🌸 NAME 🌸

batadv_mcast_want_ipv4_update β€” update the want-all-ipv4 counter and the list 🫢


⭐ SYNOPSIS ⭐

void batadv_mcast_want_ipv4_update (struct batadv_priv *bat_priv ,
struct batadv_orig_node *orig , u8 mcast_flags );

that's the whole signature, no cap. it returns void, so it's a "do the thing, don't give me a receipt" kinda situation πŸ’…


πŸ¦‹ ARGUMENTS πŸ¦‹

  • bat_priv β€” the bat priv that's holding all the mesh interface information. yes, all of it. main character struct, fr fr πŸ‘‘
  • orig β€” the orig_node whose multicast state might have changed. "might have" bestie, we're checking, we're not assuming πŸ™ˆ
  • mcast_flags β€” the flags that indicate the brand new multicast state. fresh out of the box ✨

πŸ’œ DESCRIPTION πŸ’œ

so here's the vibe: if the BATADV_MCAST_WANT_ALL_IPV4 flag of this originator β€” that's orig β€” has toggled, then this method updates the counter and the list accordingly. toggled is the keyword, iykyk. no toggle, no update, that's just how it is πŸ’…

⚠️ okay this part is important, don't skip it: the caller needs to hold orig->mcast_handler_lock. that's not a suggestion, that's the rule. hold the lock, bestie, or things get messy 😭

πŸ”₯ SEE ALSO πŸ”₯

the whole friend group, gathered for you 🫢 first up, the kernel file: ./net/batman-adv/multicast.c, and then the crew:

batadv_mcast_start_timer(9), batadv_mcast_get_bridge(9), batadv_mcast_mla_rtr_flags_meshif_get_ipv4(9), batadv_mcast_mla_rtr_flags_meshif_get_ipv6(9), batadv_mcast_mla_rtr_flags_meshif_get(9), batadv_mcast_mla_rtr_flags_bridge_get(9), batadv_mcast_mla_rtr_flags_get(9), batadv_mcast_mla_forw_flags_get(9), batadv_mcast_mla_flags_get(9), batadv_mcast_mla_is_duplicate(9), batadv_mcast_mla_meshif_get_ipv4(9), batadv_mcast_mla_meshif_get_ipv6(9), batadv_mcast_mla_meshif_get(9), batadv_mcast_mla_br_addr_cpy(9), batadv_mcast_mla_bridge_get(9), batadv_mcast_mla_list_free(9), batadv_mcast_mla_tt_retract(9), batadv_mcast_mla_tt_add(9), batadv_mcast_querier_log(9), batadv_mcast_bridge_log(9), batadv_mcast_flags_log(9), batadv_mcast_mla_flags_update(9), __batadv_mcast_mla_update(9), batadv_mcast_mla_update(9), batadv_mcast_is_report_ipv4(9), batadv_mcast_forw_mode_check_ipv4(9), batadv_mcast_is_report_ipv6(9), batadv_mcast_forw_mode_check_ipv6(9), batadv_mcast_forw_mode_check(9), batadv_mcast_forw_want_all_ip_count(9), batadv_mcast_forw_rtr_count(9), batadv_mcast_forw_mode_by_count(9), batadv_mcast_forw_mode(9), batadv_mcast_forw_send_orig(9), batadv_mcast_forw_tt(9), batadv_mcast_forw_want_all_ipv4(9), batadv_mcast_forw_want_all_ipv6(9), batadv_mcast_forw_want_all(9), batadv_mcast_forw_want_all_rtr4(9), batadv_mcast_forw_want_all_rtr6(9), batadv_mcast_forw_want_rtr(9), batadv_mcast_forw_send(9), batadv_mcast_want_unsnoop_update(9), batadv_mcast_want_ipv6_update(9), batadv_mcast_want_rtr4_update(9), batadv_mcast_want_rtr6_update(9), batadv_mcast_have_mc_ptype_update(9), batadv_mcast_tvlv_flags_get(9), batadv_mcast_tvlv_ogm_handler(9), batadv_mcast_init(9), batadv_mcast_mesh_info_put(9), batadv_mcast_flags_dump_entry(9), batadv_mcast_flags_dump_bucket(9), __batadv_mcast_flags_dump(9), batadv_mcast_netlink_get_primary(9), batadv_mcast_flags_dump(9), batadv_mcast_free(9), batadv_mcast_purge_orig(9)

like I said. the whole group chat πŸ’€ but every single one of them matters, ok?


and that's the page, bestie πŸ’– this lil baddie came from ./net/batman-adv and it's dated October 2026, under the Kernel API Manual banner β€” go forth and update those counters responsibly βœ¨πŸŽ€

πŸ“¦ where this page comes from