Date: Tue, 6 Mar 2007 13:13:50 GMT From: Sepherosa Ziehau <sephe@FreeBSD.org> To: Perforce Change Reviews <perforce@FreeBSD.org> Subject: PERFORCE change 115413 for review Message-ID: <200703061313.l26DDoZa004851@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=115413 Change 115413 by sephe@sephe_zealot:sam_wifi on 2007/03/06 13:13:25 - ic_bss is in STA table now. - Set ic_des_chan, even if the channel to be set to ic_des_chan is same as ic_bsschan. Reviewed by: sam@ Affected files ... .. //depot/projects/wifi/sys/net80211/ieee80211_ioctl.c#69 edit Differences ... ==== //depot/projects/wifi/sys/net80211/ieee80211_ioctl.c#69 (text+ko) ==== @@ -230,12 +230,8 @@ if (error != 0) return error; ni = ieee80211_find_node(&ic->ic_sta, macaddr); - if (ni == NULL) { - /* XXX special-case sta-mode until bss is node in ic_sta */ - if (ic->ic_opmode != IEEE80211_M_STA) - return ENOENT; - ni = ieee80211_ref_node(ic->ic_bss); - } + if (ni == NULL) + return EINVAL; if (ireq->i_len > sizeof(struct ieee80211req_sta_stats)) ireq->i_len = sizeof(struct ieee80211req_sta_stats); /* NB: copy out only the statistics */ @@ -682,12 +678,8 @@ ni = NULL; } else { ni = ieee80211_find_node(&ic->ic_sta, macaddr); - if (ni == NULL) { - /* XXX special-case sta-mode until bss is in ic_sta */ - if (ic->ic_opmode != IEEE80211_M_STA) - return EINVAL; /* XXX */ - ni = ieee80211_ref_node(ic->ic_bss); - } + if (ni == NULL) + return EINVAL; } return getstainfo_common(ic, ireq, ni, off); } @@ -1736,9 +1728,9 @@ if (ic->ic_opmode == IEEE80211_M_HOSTAP && !check_mode_consistency(c, ic->ic_des_mode)) return EINVAL; + ic->ic_des_chan = c; if (ic->ic_state == IEEE80211_S_RUN && c == ic->ic_bsschan) return 0; /* NB: nothing to do */ - ic->ic_des_chan = c; } error = 0; if ((ic->ic_opmode == IEEE80211_M_MONITOR || @@ -1787,9 +1779,9 @@ if (ic->ic_opmode == IEEE80211_M_HOSTAP && !check_mode_consistency(c, ic->ic_des_mode)) return EINVAL; + ic->ic_des_chan = c; if (ic->ic_state == IEEE80211_S_RUN && c == ic->ic_bsschan) return 0; /* NB: nothing to do */ - ic->ic_des_chan = c; } error = 0; if ((ic->ic_opmode == IEEE80211_M_MONITOR ||
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200703061313.l26DDoZa004851>