fix madwifi channel setting (#2073)
[openwrt/openwrt.git] / package / madwifi / files / lib / wifi / madwifi.sh
index 07a6cd78bf74b1285d527dd8bb4b90c237fd5559..91986155381553f2869ef72be4f3fc0d19f03c2c 100755 (executable)
@@ -71,6 +71,7 @@ disable_atheros() (
 )
 
 enable_atheros() {
+       local device="$1"
        config_get channel "$device" channel
        config_get vifs "$device" vifs
        
@@ -102,7 +103,7 @@ enable_atheros() {
                                *a) agmode=11a;;
                                *) agmode=auto;;
                        esac
-                       iwconfig "$ifname" channel 0 >/dev/null 2>/dev/null 
+                       iwconfig "$ifname" channel "$channel" >/dev/null 2>/dev/null 
                        ifconfig "$ifname" up
                        sleep 1
                        iwpriv "$ifname" mode "$agmode"
@@ -156,10 +157,8 @@ enable_atheros() {
                esac
                config_get ssid "$vif" ssid
 
-               [ "$mode" = "sta" ] && {
-                       config_get_bool bgscan "$vif" bgscan 1
-                       iwpriv "$ifname" bgscan "$bgscan"
-               }
+               config_get_bool bgscan "$vif" bgscan 0
+               iwpriv "$ifname" bgscan "$bgscan"
 
                config_get_bool antdiv "$device" diversity 1
                sysctl -w dev."$device".diversity="$antdiv" >&-
@@ -245,7 +244,7 @@ EOF
                                                #add wpa_supplicant calls here
                                        ;;
                                esac
-                               [ -z "$proto" ] || wpa_supplicant ${bridge:+ -b $bridge} -Bw -D wext -i "$ifname" -c /var/run/wpa_supplicant-$ifname.conf
+                               [ -z "$proto" ] || wpa_supplicant ${bridge:+ -b $bridge} -B -D wext -i "$ifname" -c /var/run/wpa_supplicant-$ifname.conf
                        ;;
                esac
                first=0