From 2d57a0dd0e73fd286963c40e6382ff45c77fe208 Mon Sep 17 00:00:00 2001 From: Naveen Rawat Date: Fri, 21 Oct 2016 15:59:54 -0700 Subject: qcacld-3.0: Fix ext_caps IE in Probe Request sent due to HB Failure Pass addition scan IE to probe request function when generating probe request due to HB failure, otherwise Ext Cap IE values will not be consistent with other probe requests. Change-Id: I65ba2d5377f7c48d5344c5b4b9782e3c55f6635c CRs-Fixed: 1081117 --- core/mac/src/pe/lim/lim_link_monitoring_algo.c | 4 +++- core/mac/src/pe/lim/lim_process_mlm_rsp_messages.c | 10 +++++----- 2 files changed, 8 insertions(+), 6 deletions(-) (limited to 'core/mac/src') diff --git a/core/mac/src/pe/lim/lim_link_monitoring_algo.c b/core/mac/src/pe/lim/lim_link_monitoring_algo.c index 9d7b9fe9d936..57f00e48abd3 100644 --- a/core/mac/src/pe/lim/lim_link_monitoring_algo.c +++ b/core/mac/src/pe/lim/lim_link_monitoring_algo.c @@ -491,7 +491,9 @@ void lim_handle_heart_beat_failure(tpAniSirGlobal mac_ctx, /* for searching AP, we don't include any more IE */ lim_send_probe_req_mgmt_frame(mac_ctx, &session->ssId, session->bssId, curr_chan, session->selfMacAddr, - session->dot11mode, 0, NULL); + session->dot11mode, + session->pLimJoinReq->addIEScan.length, + session->pLimJoinReq->addIEScan.addIEdata); } else { lim_log(mac_ctx, LOGW, FL("HB missed from AP on DFS chanel moving to passive")); diff --git a/core/mac/src/pe/lim/lim_process_mlm_rsp_messages.c b/core/mac/src/pe/lim/lim_process_mlm_rsp_messages.c index bd61bb43c4a0..ed7eb00abe27 100644 --- a/core/mac/src/pe/lim/lim_process_mlm_rsp_messages.c +++ b/core/mac/src/pe/lim/lim_process_mlm_rsp_messages.c @@ -1372,6 +1372,8 @@ lim_handle_sme_join_result(tpAniSirGlobal mac_ctx, * to SME */ lim_cleanup_rx_path(mac_ctx, sta_ds, session_entry); + qdf_mem_free(session_entry->pLimJoinReq); + session_entry->pLimJoinReq = NULL; /* Cleanup if add bss failed */ if (session_entry->add_bss_failed) { dph_delete_hash_entry(mac_ctx, @@ -1379,15 +1381,13 @@ lim_handle_sme_join_result(tpAniSirGlobal mac_ctx, &session_entry->dph.dphHashTable); goto error; } - qdf_mem_free(session_entry->pLimJoinReq); - session_entry->pLimJoinReq = NULL; return; } + qdf_mem_free(session_entry->pLimJoinReq); + session_entry->pLimJoinReq = NULL; } error: - qdf_mem_free(session_entry->pLimJoinReq); - session_entry->pLimJoinReq = NULL; - /* Delete teh session if JOIN failure occurred. */ + /* Delete the session if JOIN failure occurred. */ if (result_code != eSIR_SME_SUCCESS) { if (lim_set_link_state (mac_ctx, eSIR_LINK_DOWN_STATE, -- cgit v1.2.3