ieee80211_get_buffered_bc — accessing buffered broadcast and multicast frames
struct sk_buff * ieee80211_get_buffered_bc ( | struct ieee80211_hw * hw, |
struct ieee80211_vif * vif) ; |
hw
pointer as obtained from ieee80211_alloc_hw
.
vif
struct ieee80211_vif pointer from the add_interface callback.
Function for accessing buffered broadcast and multicast frames. If hardware/firmware does not implement buffering of broadcast/multicast frames when power saving is used, 802.11 code buffers them in the host memory. The low-level driver uses this function to fetch next buffered frame. In most cases, this is used when generating beacon frame.
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. 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.