summaryrefslogtreecommitdiffstats
path: root/package/broadcom-wl
diff options
context:
space:
mode:
Diffstat (limited to 'package/broadcom-wl')
-rw-r--r--package/broadcom-wl/files/lib/wifi/broadcom.sh18
1 files changed, 17 insertions, 1 deletions
diff --git a/package/broadcom-wl/files/lib/wifi/broadcom.sh b/package/broadcom-wl/files/lib/wifi/broadcom.sh
index 9fed98f81..4dad01132 100644
--- a/package/broadcom-wl/files/lib/wifi/broadcom.sh
+++ b/package/broadcom-wl/files/lib/wifi/broadcom.sh
@@ -117,7 +117,23 @@ enable_broadcom() {
config_get enc "$vif" encryption
case "$enc" in
WEP|wep)
- wsec_r=1
+ wsec_r=0
+ wsec=1
+ defkey=1
+ config_get key "$vif" key
+ case "$key" in
+ [1234])
+ defkey="$key"
+ for knr in 1 2 3 4; do
+ config_get k "$vif" key$knr
+ [ -n "$k" ] || continue
+ [ "$defkey" = "$knr" ] && def="=" || def=""
+ append vif_pre_up "wepkey $def$knr,$k" "$N"
+ done
+ ;;
+ "");;
+ *) append vif_pre_up "wepkey 1,$key" "$N";;
+ esac
;;
*psk*|*PSK*)
wsec_r=1