MCPcopy Create free account
hub / github.com/F-Stack/f-stack / ieee80211_sync_curchan

Function ieee80211_sync_curchan

freebsd/net80211/ieee80211_node.c:759–776  ·  view source on GitHub ↗

* Check if the current channel needs to change based on whether * any vap's are using HT20/HT40. This is used to sync the state * of ic_curchan after a channel width change on a running vap. * * Same applies for VHT. */

Source from the content-addressed store, hash-verified

757 * Same applies for VHT.
758 */
759void
760ieee80211_sync_curchan(struct ieee80211com *ic)
761{
762 struct ieee80211_channel *c;
763
764 c = ieee80211_ht_adjust_channel(ic, ic->ic_curchan, gethtadjustflags(ic));
765 c = ieee80211_vht_adjust_channel(ic, c, getvhtadjustflags(ic));
766
767 if (c != ic->ic_curchan) {
768 ic->ic_curchan = c;
769 ic->ic_curmode = ieee80211_chan2mode(ic->ic_curchan);
770 ic->ic_rt = ieee80211_get_ratetable(ic->ic_curchan);
771 IEEE80211_UNLOCK(ic);
772 ic->ic_set_channel(ic);
773 ieee80211_radiotap_chan_change(ic);
774 IEEE80211_LOCK(ic);
775 }
776}
777
778/*
779 * Setup the current channel. The request channel may be

Callers 1

sta_newstateFunction · 0.85

Calls 7

gethtadjustflagsFunction · 0.85
getvhtadjustflagsFunction · 0.85
ieee80211_chan2modeFunction · 0.85
ieee80211_get_ratetableFunction · 0.85

Tested by

no test coverage detected