summaryrefslogtreecommitdiffstats
path: root/package
diff options
context:
space:
mode:
authoracinonyx <acinonyx@3c298f89-4303-0410-b956-a3cf2f4a3e73>2009-07-12 15:37:59 +0000
committeracinonyx <acinonyx@3c298f89-4303-0410-b956-a3cf2f4a3e73>2009-07-12 15:37:59 +0000
commit90951f130b65ad10b69d9750267819f0ee785455 (patch)
tree44529e31f62045ae17a19c539e53c53ceaedd0cf /package
parente86d60479c5dc8543e2fe1d35f6a7e9bb7cd56c2 (diff)
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 <x-alina@gmx.net> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@16814 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package')
-rwxr-xr-xpackage/madwifi/files/lib/wifi/madwifi.sh39
1 files changed, 17 insertions, 22 deletions
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
}