From 4560fa063dacb86f9e96bc8c3a426f95d86da974 Mon Sep 17 00:00:00 2001 From: Abhishek Singh Date: Mon, 29 Aug 2016 12:45:38 +0530 Subject: [PATCH] qcacld-3.0: Ignore security mismatch for HS2.0 association qcacld-2.0 to qcacld-3.0 propagation After connection, driver process beacon to detect any change in AP's capabilities. Currently if privacy bit is set in beacon and if rsn or wpa bit is not set, driver issues disconnect command. In case of HS2.0, all security capabilities are part of vendor specific information. Hence, both wpa and rsn bit is 0, though privacy bit is set. Since driver considers it as a change in AP security params, it issues disconnect. As a part of fix, make sure that for OSEN capabilities disconnect is not issued. Change-Id: I800bea0448256f663f61bccf6b0ec6b0f71d824b CRs-Fixed: 796397 --- core/mac/src/pe/lim/lim_api.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/core/mac/src/pe/lim/lim_api.c b/core/mac/src/pe/lim/lim_api.c index 788c0e48a6a0..104b77de3ebc 100644 --- a/core/mac/src/pe/lim/lim_api.c +++ b/core/mac/src/pe/lim/lim_api.c @@ -1289,9 +1289,9 @@ lim_enc_type_matched(tpAniSirGlobal mac_ctx, FL("Beacon/Probe:: Privacy :%d WPA Present:%d RSN Present: %d"), bcn->capabilityInfo.privacy, bcn->wpaPresent, bcn->rsnPresent); lim_log(mac_ctx, LOG1, - FL("session:: Privacy :%d EncyptionType: %d"), + FL("session:: Privacy :%d EncyptionType: %d OSEN %d"), SIR_MAC_GET_PRIVACY(session->limCurrentBssCaps), - session->encryptType); + session->encryptType, session->isOSENConnection); /* * This is handled by sending probe req due to IOT issues so @@ -1327,6 +1327,14 @@ lim_enc_type_matched(tpAniSirGlobal mac_ctx, (session->encryptType == eSIR_ED_AES_128_CMAC))) return true; + /* For HS2.0, RSN ie is not present + * in beacon. Therefore no need to + * check for security type in case + * OSEN session. + */ + if (session->isOSENConnection) + return true; + return false; }