broadcom-wl: implement wepauth in wlc and support it in broadcom.sh, allows switching...
authorJo-Philipp Wich <jow@openwrt.org>
Thu, 21 Jan 2010 20:52:17 +0000 (20:52 +0000)
committerJo-Philipp Wich <jow@openwrt.org>
Thu, 21 Jan 2010 20:52:17 +0000 (20:52 +0000)
SVN-Revision: 19256

package/broadcom-wl/files/lib/wifi/broadcom.sh
package/broadcom-wl/src/wlc/wlc.c

index f5d15f841d4b78dc89f2c84d967e9bb485198b68..94f220e0a16e15b9d9eb607246048e6241e78088 100644 (file)
@@ -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"
index 3f3130de87033d820601ca8beb0f3c8ced061ddd..747b3d5bb978371df2c3473bafd428f9a153f753 100644 (file)
@@ -663,6 +663,13 @@ static const struct wlc_call wlc_calls[] = {
                .handler = wlc_wsec_key,
                .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,