ieee80211_b...get_template(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– ieee80211_beacon_get_template β€” beacon template generation function ✨

okay so bestie, welcome to the Kernel API Manual β€” this one's about the beacon template generation function and honestly it's kind of a big deal if you're writing a driver that makes its own beacons πŸ‘‘


🌸 NAME 🌸

ieee80211_beacon_get_template β€” beacon template generation function πŸŽ€


✨ SYNOPSIS ✨

struct sk_buff * ieee80211_beacon_get_template (struct ieee80211_hw *hw
, struct ieee80211_vif *vif , struct ieee80211_mutable_offsets *offs ,
unsigned int link_id );

πŸ¦‹ ARGUMENTS πŸ¦‹

  • hw β€” a pointer you got from ieee80211_alloc_hw. that's literally where it comes from, no cap 🫢
  • vif β€” your struct ieee80211_vif pointer, handed to you from the add_interface callback. iconic handoff fr fr
  • offs β€” a struct ieee80211_mutable_offsets pointer, pointing at a struct that's gonna receive the offsets that the driver may update πŸ’…
  • link_id β€” the link id that the beacon belongs to (or 0 for an AP STA that is not associated with AP MLD) πŸ”₯

πŸ’œ DESCRIPTION πŸ’œ

so if your driver implements beaconing modes, it must use this function to obtain the beacon template. like, mandatory, not optional, periodt πŸ’€

Use this function when the beacon frames are generated by the device β€” and then the driver must use the returned beacon as the template. the driver or the device is the one responsible for updating the DTIM and, when applicable, the CSA count. that's their job, not yours, don't @ me 🌈

⚠️ and listen β€” the driver is responsible for freeing the returned skb. yes, you, bestie. don't leak it πŸ™ˆ

⭐ RETURN ⭐

The beacon template. and NULL on error 😭


πŸ‘‘ SEE ALSO πŸ‘‘

okay this is the part where the manpage just dumps the entire kernel on you πŸ’€ but respect, because every single one of these is a real one. Kernel file ./include/net/mac80211.h is where you go for the intro vibes: Introduction(9), Calling mac80211 from interrupts(9), Warning(9), Frame format(9), mac80211 workqueue(9), mac80211 software tx queueing(9), HW timestamping(9) ✨

then the whole cast, in order, no skips πŸŽ€

like, that's the whole friend group, and they all ate πŸ’…βœ¨


and that's the page, bestie 🫢 this one's from ./include/net, dated October 2026, and the manual page itself is ieee80211_b...get_template(9) β€” go forth and template those beacons, you got this πŸ’–

πŸ“¦ where this page comes from