From 7dc888fefc053996354ca40602159e0ce5669f86 Mon Sep 17 00:00:00 2001
From: James Ketrenos <jketreno@linux.intel.com>
Date: Wed, 21 Sep 2005 11:58:38 -0500
Subject: [PATCH] [PATCH] ieee80211: Keep auth mode unchanged after iwconfig
 key off/on cycle

tree 2e6f6e7dc4f4eeb8e3dc265020016dd53e40578a
parent ba2075794a089430b3dd7c90ff46ce1b67e9c7cc
author Zhu Yi <yi.zhu@intel.com> 1125551043 +0800
committer James Ketrenos <jketreno@linux.intel.com> 1127314475 -0500

[Bug 768] Keep auth mode unchanged after iwconfig key off/on cycle.

Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
---
 net/ieee80211/ieee80211_wx.c | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/net/ieee80211/ieee80211_wx.c b/net/ieee80211/ieee80211_wx.c
index d710f47c4bd..65aa96da730 100644
--- a/net/ieee80211/ieee80211_wx.c
+++ b/net/ieee80211/ieee80211_wx.c
@@ -412,11 +412,15 @@ int ieee80211_wx_set_encode(struct ieee80211_device *ieee,
 			sec.flags |= SEC_ACTIVE_KEY;
 		}
 	}
-	ieee->open_wep = !(erq->flags & IW_ENCODE_RESTRICTED);
-	sec.auth_mode = ieee->open_wep ? WLAN_AUTH_OPEN : WLAN_AUTH_SHARED_KEY;
-	sec.flags |= SEC_AUTH_MODE;
-	IEEE80211_DEBUG_WX("Auth: %s\n", sec.auth_mode == WLAN_AUTH_OPEN ?
-			   "OPEN" : "SHARED KEY");
+	if (erq->flags & (IW_ENCODE_OPEN | IW_ENCODE_RESTRICTED)) {
+		ieee->open_wep = !(erq->flags & IW_ENCODE_RESTRICTED);
+		sec.auth_mode = ieee->open_wep ? WLAN_AUTH_OPEN :
+		    WLAN_AUTH_SHARED_KEY;
+		sec.flags |= SEC_AUTH_MODE;
+		IEEE80211_DEBUG_WX("Auth: %s\n",
+				   sec.auth_mode == WLAN_AUTH_OPEN ?
+				   "OPEN" : "SHARED KEY");
+	}
 
 	/* For now we just support WEP, so only set that security level...
 	 * TODO: When WPA is added this is one place that needs to change */
-- 
2.41.3