diff options
author | jow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2010-01-21 20:52:17 +0000 |
---|---|---|
committer | jow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2010-01-21 20:52:17 +0000 |
commit | 917da387ef18f93fe071221bc4f730e45134306e (patch) | |
tree | 9888db8b31bcf696b805cc474ec2f7f526f82cae /package/broadcom-wl | |
parent | 3e3062918b74f0a0bd246b39279652afa6d785dc (diff) |
[package] broadcom-wl: implement wepauth in wlc and support it in broadcom.sh, allows switching between open and shared authentication
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19256 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/broadcom-wl')
-rw-r--r-- | package/broadcom-wl/files/lib/wifi/broadcom.sh | 6 | ||||
-rw-r--r-- | package/broadcom-wl/src/wlc/wlc.c | 7 |
2 files changed, 12 insertions, 1 deletions
diff --git a/package/broadcom-wl/files/lib/wifi/broadcom.sh b/package/broadcom-wl/files/lib/wifi/broadcom.sh index f5d15f841..94f220e0a 100644 --- a/package/broadcom-wl/files/lib/wifi/broadcom.sh +++ b/package/broadcom-wl/files/lib/wifi/broadcom.sh @@ -181,11 +181,15 @@ enable_broadcom() { nasopts= config_get enc "$vif" encryption case "$enc" in - WEP|wep) + *WEP*|*wep*) wsec_r=1 wsec=1 defkey=1 config_get key "$vif" key + case "$enc" in + *shared*) append vif_do_up "wepauth 1" "$N";; + *) append vif_do_up "wepauth 0" "$N";; + esac case "$key" in [1234]) defkey="$key" diff --git a/package/broadcom-wl/src/wlc/wlc.c b/package/broadcom-wl/src/wlc/wlc.c index 3f3130de8..747b3d5bb 100644 --- a/package/broadcom-wl/src/wlc/wlc.c +++ b/package/broadcom-wl/src/wlc/wlc.c @@ -664,6 +664,13 @@ static const struct wlc_call wlc_calls[] = { .desc = "Set/Remove WEP keys" }, { + .name = "wepauth", + .param = INT, + .handler = wlc_ioctl, + .data.num = ((WLC_GET_AUTH << 16) | WLC_SET_AUTH), + .desc = "WEP authentication type. 0 = OpenSystem, 1 = SharedKey" + }, + { .name = "wsec_restrict", .param = INT, .handler = wlc_bssiovar, |