[ar71xx] create firmware image for the Ubiquiti LS-SR71 board
[openwrt/svn-archive/archive.git] / target / linux / s3c24xx / patches-2.6.24 / 1143-fix-wep-needs-keys-before-ap.patch.patch
1 From ada5962807036b786fee00fd4462009c179181b6 Mon Sep 17 00:00:00 2001
2 From: Sean McNeil <sean@mcneil.com>
3 Date: Tue, 13 May 2008 10:54:45 +0100
4 Subject: [PATCH] fix-wep-needs-keys-before-ap.patch
5
6 Signed-off-by: Andy Green <andy@openmoko.com>
7 ---
8 .../function/wlan/ar6000/ar6000/wireless_ext.c | 20 +++++++-------------
9 1 files changed, 7 insertions(+), 13 deletions(-)
10
11 diff --git a/drivers/sdio/function/wlan/ar6000/ar6000/wireless_ext.c b/drivers/sdio/function/wlan/ar6000/ar6000/wireless_ext.c
12 index db749e2..ede8e62 100644
13 --- a/drivers/sdio/function/wlan/ar6000/ar6000/wireless_ext.c
14 +++ b/drivers/sdio/function/wlan/ar6000/ar6000/wireless_ext.c
15 @@ -424,10 +424,6 @@ ar6000_ioctl_giwessid(struct net_device *dev,
16 return -EIO;
17 }
18
19 - if (!ar->arSsidLen) {
20 - return -EINVAL;
21 - }
22 -
23 data->flags = 1;
24 data->length = ar->arSsidLen;
25 A_MEMCPY(essid, ar->arSsid, ar->arSsidLen);
26 @@ -818,12 +814,6 @@ ar6000_ioctl_siwencode(struct net_device *dev,
27 AR_SOFTC_T *ar = (AR_SOFTC_T *)dev->priv;
28 int index;
29 A_INT32 auth = ar->arDot11AuthMode;
30 - /*
31 - * Static WEP Keys should be configured before setting the SSID
32 - */
33 - if (ar->arSsidLen) {
34 - return -EIO;
35 - }
36
37 if (ar->arWlanState == WLAN_DISABLED) {
38 return -EIO;
39 @@ -894,6 +884,7 @@ ar6000_ioctl_siwencode(struct net_device *dev,
40 * profile has changed. Erase ssid to signal change
41 */
42 A_MEMZERO(ar->arSsid, sizeof(ar->arSsid));
43 + ar->arSsidLen = 0;
44
45 return 0;
46 }
47 @@ -1096,8 +1087,10 @@ static int ar6000_ioctl_siwauth(struct net_device *dev,
48 return -EOPNOTSUPP;
49 }
50
51 - if (reset)
52 - memset(ar->arSsid, 0, sizeof(ar->arSsid));
53 + if (reset) {
54 + A_MEMZERO(ar->arSsid, sizeof(ar->arSsid));
55 + ar->arSsidLen = 0;
56 + }
57
58 return 0;
59 }
60 @@ -1335,7 +1328,8 @@ ar6000_ioctl_setparam(struct net_device *dev,
61 /*
62 * profile has changed. Erase ssid to signal change
63 */
64 - A_MEMZERO(ar->arSsid, sizeof(ar->arSsid));
65 + A_MEMZERO(ar->arSsid, sizeof(ar->arSsid));
66 + ar->arSsidLen = 0;
67 }
68
69 return ret;
70 --
71 1.5.6.5
72