DF-0713 / fix.diff
diff --git a/sys/netproto/802_11/wlan/ieee80211_dfs.c b/sys/netproto/802_11/wlan/ieee80211_dfs.c --- a/sys/netproto/802_11/wlan/ieee80211_dfs.c +++ b/sys/netproto/802_11/wlan/ieee80211_dfs.c @@ -150,8 +150,10 @@ ic->ic_curchan->ic_ieee, ic->ic_curchan->ic_freq); /* XXX clobbers any existing desired channel */ - /* NB: dfs->newchan may be NULL, that's ok */ - vap->iv_des_chan = dfs->newchan; + /* NB: dfs->newchan may be NULL; use ANYC sentinel so + * downstream != IEEE80211_CHAN_ANYC guards work. */ + vap->iv_des_chan = (dfs->newchan != NULL) ? + dfs->newchan : IEEE80211_CHAN_ANYC; /* XXX recursive lock need ieee80211_new_state_locked */ ieee80211_new_state(vap, IEEE80211_S_SCAN, 0); } else { |