ieee80211_get_buffered_bc(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– NAME πŸ’–

ieee80211_get_buffered_bc β€” ok so this is the function for accessing buffered broadcast and multicast frames ✨ welcome to the Kernel API Manual bestie, this one's about grabbing frames out of the buffer 🫢


🌸 SYNOPSIS 🌸

struct sk_buff * ieee80211_get_buffered_bc (struct ieee80211_hw *hw ,
struct ieee80211_vif *vif );

πŸŽ€ ARGUMENTS πŸŽ€

  • hw β€” pointer as obtained from ieee80211_alloc_hw πŸ’« like, the one you already got from there, no cap.
  • vif β€” a struct ieee80211_vif pointer from the add_interface callback πŸ¦‹

🧚 DESCRIPTION 🧚

Okay so picture this: this is the function for accessing buffered broadcast and multicast frames πŸ‘‘ If the hardware/firmware doesn't implement buffering of broadcast/multicast frames when power saving is used, the 802.11 code buffers them in the host memory πŸ’Ύβœ¨ And the low-level driver uses this function to fetch the next buffered frame, iykyk.

In most cases, this is used when generating beacon frame πŸ”₯ literally the main character of beacon generation ngl.


⭐ RETURN ⭐

A pointer to the next buffered skb πŸ’– or NULL if no more buffered frames are available 😭 that's the whole vibe check.


πŸ’… NOTE πŸ’…

bestie pls read this one, it's important πŸ™ˆ

Buffered frames are returned only after DTIM beacon frame was generated with ieee80211_beacon_get πŸ“‘ and the low-level driver must thus call ieee80211_beacon_get first, fr fr.

ieee80211_get_buffered_bc returns NULL if the previous generated beacon was not DTIM πŸ’€ so the low-level driver does not need to check for DTIM beacons separately and should be able to use common code for all beacons 🌈 slay, that's convenient.


🌈 SEE ALSO 🌈

Kernel file ./include/net/mac80211.h πŸ’Ύ and like, so many friends:


okay that's the whole page bestie, you ate that πŸ’…βœ¨ and just so you have the receipts β€” this came out of ./include/net, dated October 2026, and it's the ieee80211_get_buffered_bc(9) page from the Kernel API Manual πŸŽ€πŸ¦‹ go fetch those frames, periodt πŸ’–

πŸ“¦ where this page comes from