batadv_is_valid_iface(9)
π batadv_is_valid_iface(9) β like, the Kernel API Manual page, bestie
okay so this is batadv_is_valid_iface, straight out of the Kernel API Manual, and it's basically the bouncer at the club door of your batman-adv mesh π she looks at a net_device and decides if it's allowed in as a hard interface. no cap, that's the whole job. let's get into it β¨
β¨ NAME β¨
batadv_is_valid_iface β checks whether a net_device can actually be used as a hard interface π«Ά
π¦ SYNOPSIS π¦
bool batadv_is_valid_iface (const struct net_device *net_dev );
πΈ ARGUMENTS πΈ
net_devβ thenet_devicewe're putting through the vibe check π that's the one being checked, mwah.
π DESCRIPTION π
So here's the tea β this function is gonna refuse β like, hard no, not today β any of the following:
- loopback devices π ββοΈ
- non-Ethernet devices π ββοΈ
- devices with a non-Ethernet address length π ββοΈ
- and literally any device that's already part of a batman-adv mesh interface stack π ββοΈ
like if it's already in the stack, bestie, it's taken. we don't do that here π
π RETURN π
trueβ congrats babes,net_devcan be used as a hard interface πβ¨falseβ nope, not valid, better luck next time π
π SEE ALSO π
Kernel file ./net/batman-adv/hard-interface.c β iykyk, that's where she lives π
batadv_hardif_release(9)batadv_hardif_get_by_netdev(9)batadv_getlink_net(9)batadv_mutual_parents(9)batadv_is_on_batman_iface(9)__batadv_get_real_netdev(9)batadv_get_real_netdev(9)batadv_is_wext_netdev(9)batadv_is_cfg80211_netdev(9)batadv_wifi_flags_evaluate(9)batadv_netdev_get_wifi_flags(9)batadv_hardif_get_wifi_flags(9)batadv_is_wifi_hardif(9)batadv_hardif_no_broadcast(9)batadv_hardif_get_active(9)batadv_primary_if_update_addr(9)batadv_primary_if_select(9)batadv_hardif_is_iface_up(9)batadv_check_known_mac_addr(9)batadv_hardif_recalc_extra_skbroom(9)batadv_hardif_min_mtu(9)batadv_update_min_mtu(9)batadv_hardif_activate_interface(9)batadv_hardif_deactivate_interface(9)batadv_hardif_enable_interface(9)batadv_hardif_disable_interface(9)batadv_hard_if_event_meshif(9)batadv_wifi_net_device_insert(9)batadv_wifi_net_device_remove(9)batadv_wifi_net_device_update(9)batadv_wifi_net_device_unregister(9)batadv_wifi_net_device_event(9)batadv_hard_if_event(9)batadv_wifi_net_devices_init(9)batadv_wifi_net_devices_deinit(9)
ok that's the whole page, go be iconic with your hard interfaces π
anyway that's a wrap, besties π«Ά this one's from the source tree at ./net/batman-adv, dated October 2026, and it's the batadv_is_valid_iface(9) page β slay, bye π
π¦ 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