blob: 00dbf47082212593618222d1f857224c72154179 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
Author: Hong Liu <hong.liu@intel.com>
This patch fixes the ah-hoc network issue.
If we configure the wep keys after creating the ibss network, the
beacons of this network will not show correctly (it still shows "key
off" in iwlist scan report). This is because we don't update the
beacon info in firmware.
Signed-off-by: Hong Liu <hong.liu@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
---
ipw2200-1.0.6-chuyee/ipw2200.c | 10 +++++++++-
1 files changed, 9 insertions(+), 1 deletion(-)
diff -puN ipw2200.c~ibss-wep ipw2200.c
--- ipw2200-1.0.6/ipw2200.c~ibss-wep 2005-07-15 14:40:29.000000000 +0800
+++ ipw2200-1.0.6-chuyee/ipw2200.c 2005-07-15 14:46:02.000000000 +0800
@@ -9053,11 +9053,19 @@ static int ipw_wx_set_encode(struct net_
{
struct ipw_priv *priv = ieee80211_priv(dev);
int ret;
+ u32 cap = priv->capability;
down(&priv->sem);
ret = ieee80211_wx_set_encode(priv->ieee, info, wrqu, key);
- up(&priv->sem);
+ /* In IBSS mode, we need to notify the firmware to update
+ * the beacon info after we changed the capability. */
+ if (cap != priv->capability &&
+ priv->ieee->iw_mode == IW_MODE_ADHOC &&
+ priv->status & STATUS_ASSOCIATED)
+ ipw_disassociate(priv);
+
+ up(&priv->sem);
return ret;
}
_
|