qcacld-3.0: Do not send WEP keys to firmware after roaming

LFR module in firmware copies WEP keys from old AP to new AP during
roaming. Host driver should not install 0 length keys during roam
sync indication processing.

Change-Id: I002be0ab330a7161ca2554d9d423e8e1b2170e55
CRs-Fixed: 1096918
This commit is contained in:
Prakash Dhavali
2016-11-28 17:56:33 -08:00
committed by qcabuildsw
parent 3107b75f2c
commit f3287ef57b

View File

@@ -19577,7 +19577,6 @@ void csr_roam_synch_callback(tpAniSirGlobal mac_ctx,
tCsrRoamInfo *roam_info; tCsrRoamInfo *roam_info;
tCsrRoamConnectedProfile *conn_profile = NULL; tCsrRoamConnectedProfile *conn_profile = NULL;
sme_QosAssocInfo assoc_info; sme_QosAssocInfo assoc_info;
struct qdf_mac_addr bcast_mac = QDF_MAC_ADDR_BROADCAST_INITIALIZER;
tpAddBssParams add_bss_params; tpAddBssParams add_bss_params;
QDF_STATUS status = QDF_STATUS_SUCCESS; QDF_STATUS status = QDF_STATUS_SUCCESS;
uint16_t len; uint16_t len;
@@ -19687,29 +19686,20 @@ void csr_roam_synch_callback(tpAniSirGlobal mac_ctx,
session->pCurRoamProfile->negotiatedAuthType, session->pCurRoamProfile->negotiatedAuthType,
bss_desc, ies_local); bss_desc, ies_local);
roam_info->isESEAssoc = conn_profile->isESEAssoc; roam_info->isESEAssoc = conn_profile->isESEAssoc;
if (CSR_IS_ENC_TYPE_STATIC
(session->pCurRoamProfile->negotiatedUCEncryptionType) && /*
!session->pCurRoamProfile->bWPSAssociation) { * Encryption keys for new connection are obtained as follows:
if (!QDF_IS_STATUS_SUCCESS( * authStatus = CSR_ROAM_AUTH_STATUS_AUTHENTICATED
csr_roam_issue_set_context_req(mac_ctx, * Open - No keys required.
session_id, * Static WEP - Firmware copies keys from old AP to new AP.
session->pCurRoamProfile->negotiatedUCEncryptionType, * Fast roaming authentications e.g. PSK, FT, CCKM - firmware
bss_desc, * supplicant obtains them through 4-way handshake.
&(bss_desc->bssId), *
false, true, * authStatus = CSR_ROAM_AUTH_STATUS_CONNECTED
eSIR_TX_RX, 0, 0, NULL, 0))) { * All other authentications - Host supplicant performs EAPOL
/* NO keys. these key parameters don't matter */ * with AP after this point and sends new keys to the driver.
sms_log(mac_ctx, LOGE, * Driver starts wait_for_key timer for that purpose.
FL("Set context for unicast fail")); */
csr_roam_substate_change(mac_ctx,
eCSR_ROAM_SUBSTATE_NONE, session_id);
}
csr_roam_issue_set_context_req(mac_ctx, session_id,
session->pCurRoamProfile->negotiatedMCEncryptionType,
bss_desc,
&bcast_mac.bytes, false, false,
eSIR_TX_RX, 0, 0, NULL, 0);
}
if ((roam_synch_data->authStatus if ((roam_synch_data->authStatus
== CSR_ROAM_AUTH_STATUS_AUTHENTICATED)) { == CSR_ROAM_AUTH_STATUS_AUTHENTICATED)) {
QDF_TRACE(QDF_MODULE_ID_SME, QDF_TRACE(QDF_MODULE_ID_SME,