aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless
diff options
context:
space:
mode:
authorSamuel Ortiz <sameo@linux.intel.com>2010-01-18 18:19:21 -0500
committerJohn W. Linville <linville@tuxdriver.com>2010-01-19 16:49:34 -0500
commit1625c148cde23a8b4180e171ed4a17e17521b995 (patch)
treedeee8051dbee07bfe40563fc5dfa6ce685cbb417 /drivers/net/wireless
parentde9a47f92795f697964f662415cb27816c2d9b76 (diff)
libertas: Set/clear WPA keys before the WEP ones
With the v10 firmware running on 8688 HW, clearing WPA keys after setting the WEP key prevents us from being able to associate with WEP APs. Swapping the calling order for assoc_helper_wpa_keys() and assoc_helper_wep_keys fixes that issue. Signed-off-by: Samuel Ortiz <sameo@linux.intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless')
-rw-r--r--drivers/net/wireless/libertas/assoc.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/drivers/net/wireless/libertas/assoc.c b/drivers/net/wireless/libertas/assoc.c
index 5e650f358415..fb3dff0fdfa8 100644
--- a/drivers/net/wireless/libertas/assoc.c
+++ b/drivers/net/wireless/libertas/assoc.c
@@ -2052,13 +2052,6 @@ void lbs_association_worker(struct work_struct *work)
2052 goto out; 2052 goto out;
2053 } 2053 }
2054 2054
2055 if ( test_bit(ASSOC_FLAG_WEP_KEYS, &assoc_req->flags)
2056 || test_bit(ASSOC_FLAG_WEP_TX_KEYIDX, &assoc_req->flags)) {
2057 ret = assoc_helper_wep_keys(priv, assoc_req);
2058 if (ret)
2059 goto out;
2060 }
2061
2062 if (test_bit(ASSOC_FLAG_SECINFO, &assoc_req->flags)) { 2055 if (test_bit(ASSOC_FLAG_SECINFO, &assoc_req->flags)) {
2063 ret = assoc_helper_secinfo(priv, assoc_req); 2056 ret = assoc_helper_secinfo(priv, assoc_req);
2064 if (ret) 2057 if (ret)
@@ -2078,6 +2071,14 @@ void lbs_association_worker(struct work_struct *work)
2078 goto out; 2071 goto out;
2079 } 2072 }
2080 2073
2074 if ( test_bit(ASSOC_FLAG_WEP_KEYS, &assoc_req->flags)
2075 || test_bit(ASSOC_FLAG_WEP_TX_KEYIDX, &assoc_req->flags)) {
2076 ret = assoc_helper_wep_keys(priv, assoc_req);
2077 if (ret)
2078 goto out;
2079 }
2080
2081
2081 /* SSID/BSSID should be the _last_ config option set, because they 2082 /* SSID/BSSID should be the _last_ config option set, because they
2082 * trigger the association attempt. 2083 * trigger the association attempt.
2083 */ 2084 */