[Madwifi-cvs] madwifi/net80211 ieee80211_wireless.c,1.1.2.7,1.1.2.8
Status: Beta
Brought to you by:
otaku
From: Sam L. <sam...@us...> - 2004-06-17 01:33:14
|
Update of /cvsroot/madwifi/madwifi/net80211 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1739 Modified Files: Tag: WPA ieee80211_wireless.c Log Message: Make iwconfig dev freq 0 clear any desired channel; otherwise there's no way for a user to reset state using iwconfig. Index: ieee80211_wireless.c =================================================================== RCS file: /cvsroot/madwifi/madwifi/net80211/Attic/ieee80211_wireless.c,v retrieving revision 1.1.2.7 retrieving revision 1.1.2.8 diff -C2 -d -r1.1.2.7 -r1.1.2.8 *** ieee80211_wireless.c 16 Jun 2004 23:26:10 -0000 1.1.2.7 --- ieee80211_wireless.c 17 Jun 2004 01:33:05 -0000 1.1.2.8 *************** *** 540,553 **** else i = freq->m; ! if (i > IEEE80211_CHAN_MAX || isclr(ic->ic_chan_active, i)) ! return -EINVAL; ! c = &ic->ic_channels[i]; ! if (c == getcurchan(ic)) { /* no change, just return */ ! ic->ic_des_chan = c; /* XXX */ ! return 0; } - ic->ic_des_chan = c; - if (c != IEEE80211_CHAN_ANYC) - ic->ic_ibss_chan = c; if (ic->ic_opmode == IEEE80211_M_MONITOR) return IS_UP(ic->ic_dev) ? -(*ic->ic_reset)(ic->ic_dev) : 0; --- 540,564 ---- else i = freq->m; ! if (i != 0) { ! if (i > IEEE80211_CHAN_MAX || isclr(ic->ic_chan_active, i)) ! return -EINVAL; ! c = &ic->ic_channels[i]; ! if (c == getcurchan(ic)) { /* no change, just return */ ! ic->ic_des_chan = c; /* XXX */ ! return 0; ! } ! ic->ic_des_chan = c; ! if (c != IEEE80211_CHAN_ANYC) ! ic->ic_ibss_chan = c; ! } else { ! /* ! * Intepret channel 0 to mean "no desired channel"; ! * otherwise there's no way to undo fixing the desired ! * channel. ! */ ! if (ic->ic_des_chan == IEEE80211_CHAN_ANYC) ! return 0; ! ic->ic_des_chan = IEEE80211_CHAN_ANYC; } if (ic->ic_opmode == IEEE80211_M_MONITOR) return IS_UP(ic->ic_dev) ? -(*ic->ic_reset)(ic->ic_dev) : 0; |