From: acinonyx Date: Sun, 12 Jul 2009 15:37:59 +0000 (+0000) Subject: madwifi.sh channel fix X-Git-Url: http://git.ozo.com/?p=openwrt-10.03%2F.git;a=commitdiff_plain;h=90951f130b65ad10b69d9750267819f0ee785455 madwifi.sh channel fix In the madwifi.sh there is to read "only need to change freq band and channel on the first vif". This is wrong. For example if you create a new Ad-Hoc network and an AP interface, the channel is reseted to 1, regardless of the UCI setting. So remove this wrong code. Signed-off-by: Alina Friedrichsen git-svn-id: svn://svn.openwrt.org/openwrt/trunk@16814 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- diff --git a/package/madwifi/files/lib/wifi/madwifi.sh b/package/madwifi/files/lib/wifi/madwifi.sh index 809780646..fc692c022 100755 --- a/package/madwifi/files/lib/wifi/madwifi.sh +++ b/package/madwifi/files/lib/wifi/madwifi.sh @@ -126,7 +126,6 @@ enable_atheros() { config_get distance "$device" distance [ -n "$distance" ] && sysctl -w dev."$device".distance="$distance" >&- - local first=1 for vif in $vifs; do local start_hostapd= vif_txpower= nosbeacon= config_get ifname "$vif" ifname @@ -146,29 +145,26 @@ enable_atheros() { } config_set "$vif" ifname "$ifname" - # only need to change freq band and channel on the first vif - [ "$first" = 1 ] && { config_get hwmode "$device" hwmode [ -z "$hwmode" ] && config_get hwmode "$device" mode - pureg=0 - case "$hwmode" in - *b) hwmode=11b;; - *bg) hwmode=11g;; - *g) hwmode=11g; pureg=1;; - *gdt) hwmode=11gdt;; - *a) hwmode=11a;; - *adt) hwmode=11adt;; - *ast) hwmode=11ast;; - *fh) hwmode=fh;; - *) hwmode=auto;; - esac - iwpriv "$ifname" mode "$hwmode" - iwpriv "$ifname" pureg "$pureg" - - iwconfig "$ifname" channel "$channel" >/dev/null 2>/dev/null - } - + pureg=0 + case "$hwmode" in + *b) hwmode=11b;; + *bg) hwmode=11g;; + *g) hwmode=11g; pureg=1;; + *gdt) hwmode=11gdt;; + *a) hwmode=11a;; + *adt) hwmode=11adt;; + *ast) hwmode=11ast;; + *fh) hwmode=fh;; + *) hwmode=auto;; + esac + iwpriv "$ifname" mode "$hwmode" + iwpriv "$ifname" pureg "$pureg" + + iwconfig "$ifname" channel "$channel" >/dev/null 2>/dev/null + config_get_bool hidden "$vif" hidden 0 iwpriv "$ifname" hide_ssid "$hidden" @@ -339,7 +335,6 @@ enable_atheros() { fi ;; esac - first=0 done }