X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/bf4022957156bb08faa981be8cdb3c15e04e747a..8af64dd6f7b390919d8b3707b7d4ed9d2b9175ff:/package/madwifi/files/lib/wifi/madwifi.sh diff --git a/package/madwifi/files/lib/wifi/madwifi.sh b/package/madwifi/files/lib/wifi/madwifi.sh index 2a86e9190..83f35ab64 100755 --- a/package/madwifi/files/lib/wifi/madwifi.sh +++ b/package/madwifi/files/lib/wifi/madwifi.sh @@ -94,7 +94,7 @@ enable_atheros() { [ "$first" = 1 ] && { # only need to change freq band and channel on the first vif - config_get agmode "$device" mode + config_get agmode "$device" agmode pureg=0 case "$agmode" in *b) agmode=11b;; @@ -103,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" @@ -114,8 +114,10 @@ enable_atheros() { config_get_bool hidden "$vif" hidden 0 iwpriv "$ifname" hide_ssid "$hidden" - config_get_bool ff "$vif" ff 0 - iwpriv "$ifname" ff "$ff" + config_get ff "$vif" ff + if [ -n "$ff" ]; then + iwpriv "$ifname" ff "$ff" + fi config_get wds "$vif" wds case "$wds" in @@ -225,10 +227,15 @@ enable_atheros() { PSK|psk|PSK2|psk2) case "$enc" in PSK|psk) - proto='proto=WPA';; + proto='proto=WPA' + passphrase="${key}" + ;; PSK2|psk2) - proto='proto=RSN';; + proto='proto=RSN' + passphrase=`wpa_passphrase ${ssid} "${key}" | grep psk | grep -v \#| cut -d= -f2` + ;; esac + cat > /var/run/wpa_supplicant-$ifname.conf <