summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>2010-06-30 21:02:53 +0000
committerjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>2010-06-30 21:02:53 +0000
commit5794fe5fc7363181e963637e2c7d98e056193e75 (patch)
tree5e5efdc07611ce792a16a47052213271b87ac7c0
parent7ebf9e77c6c6439c3eee7a3721101b8126b66863 (diff)
[package] broadcom-wl: align wpa encryption value and cipher override format with hostapd.sh
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21997 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r--package/broadcom-wl/files/lib/wifi/broadcom.sh35
1 files changed, 27 insertions, 8 deletions
diff --git a/package/broadcom-wl/files/lib/wifi/broadcom.sh b/package/broadcom-wl/files/lib/wifi/broadcom.sh
index ffe8d1dc5..e22921732 100644
--- a/package/broadcom-wl/files/lib/wifi/broadcom.sh
+++ b/package/broadcom-wl/files/lib/wifi/broadcom.sh
@@ -192,7 +192,7 @@ enable_broadcom() {
nasopts=
config_get enc "$vif" encryption
case "$enc" in
- *WEP*|*wep*)
+ *wep*)
wsec_r=1
wsec=1
defkey=1
@@ -215,29 +215,48 @@ enable_broadcom() {
*) append vif_do_up "wepkey =1,$key" "$N";;
esac
;;
- *psk*|*PSK*)
+ *psk*)
wsec_r=1
config_get key "$vif" key
+
+ # psk version + default cipher
case "$enc" in
- wpa*+wpa2*|WPA*+WPA2*|*psk+*psk2|*PSK+*PSK2) auth=132; wsec=6;;
- wpa2*|WPA2*|*PSK2|*psk2) auth=128; wsec=4;;
- *aes|*AES) auth=4; wsec=4;;
+ *mixed*|*psk+psk2*) auth=132; wsec=6;;
+ *psk2*) auth=128; wsec=4;;
*) auth=4; wsec=2;;
esac
+
+ # cipher override
+ case "$enc" in
+ *tkip+aes*|*tkip+ccmp*|*aes+tkip*|*ccmp+tkip*) wsec=6;;
+ *aes*|*ccmp*) wsec=4;;
+ *tkip*) wsec=2;;
+ esac
+
eval "${vif}_key=\"\$key\""
nasopts="-k \"\$${vif}_key\""
;;
- *wpa*|*WPA*)
+ *wpa*)
wsec_r=1
eap_r=1
config_get key "$vif" key
config_get server "$vif" server
config_get port "$vif" port
+
+ # wpa version + default cipher
case "$enc" in
- wpa*+wpa2*|WPA*+WPA2*) auth=66; wsec=6;;
- wpa2*|WPA2*) auth=64; wsec=4;;
+ *mixed*|*wpa+wpa2*) auth=66; wsec=6;;
+ *wpa2*) auth=64; wsec=4;;
*) auth=2; wsec=2;;
esac
+
+ # cipher override
+ case "$enc" in
+ *tkip+aes*|*tkip+ccmp*|*aes+tkip*|*ccmp+tkip*) wsec=6;;
+ *aes*|*ccmp*) wsec=4;;
+ *tkip*) wsec=2;;
+ esac
+
eval "${vif}_key=\"\$key\""
nasopts="-r \"\$${vif}_key\" -h $server -p ${port:-1812}"
;;