batadv_hardif_neigh_create(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… batadv_hardif_neigh_create(9) β€” kernel API manual, but make it make sense

okay so bestie, welcome to the kernel API manual for batadv_hardif_neigh_create(9). yes it's a mouthful. no we're not skipping it. this is the originator.c-adjacent lore and it's lowkey iconic. πŸ¦‹


✨ NAME ✨

batadv_hardif_neigh_create β€” create a hardif neighbour node πŸŽ€

like, literally the function that spins up a neighbour node on a hard interface. that's the whole vibe.


🌸 SYNOPSIS 🌸

struct batadv_hardif_neigh_node * batadv_hardif_neigh_create (struct
batadv_hard_iface *hard_iface , const u8 *neigh_addr , struct
batadv_orig_node *orig_node );

it returns a struct batadv_hardif_neigh_node *. yes the asterisk is doing main character work. it always is. πŸ’«


πŸ’– ARGUMENTS πŸ’–

  • hard_iface β€” the interface this neighbour is connected to. like, the hard interface it's literally attached to, no cap.
  • neigh_addr β€” the interface address of the neighbour to retrieve. it's a const u8 *, so hands off, okay? πŸ™ˆ
  • orig_node β€” originator object representing the neighbour. the originator in question, fr fr.

πŸ”₯ RETURN πŸ”₯

the hardif neighbour node if found or created, or NULL otherwise.

so either you get the node (found or freshly created, either way slay) or you get NULL. that's the entire range of outcomes. check it before you dereference it or it's giving undefined behaviour energy. πŸ’€

πŸ‘‘ SEE ALSO πŸ‘‘

the kernel file is ./net/batman-adv/originator.c β€” that's the home base bestie 🏠

that's thirty-five cross-references bestie. thirty-five. we read them all. we did not skim. 🫢


and that's the whole page! sourced from ./net/batman-adv, dated October 2026, and filed under batadv_hardif_neigh_create(9) β€” go forth and make neighbour nodes, you absolute icon πŸ’œβœ¨πŸŽ€

πŸ“¦ where this page comes from