Просмотр исходного кода

Merge remote-tracking branch 'remotes/origin/wlan-cld3.driver.lnx.1.1-dev' into wlan-cld3.driver.lnx.2.0-dev

Fast forward CLD3.0-2.0-dev branch to tip of CLD3-1.1-dev from 5.1.0.34A to 5.1.0.34D
Merge upto commit-id: 7c2d0a0afece1c787e090069ab9465680fb315ee

* remotes/origin/wlan-cld3.driver.lnx.1.1-dev:
  Release 5.1.0.34D
  qcacld-3.0: Avoid NULL pointer dereference in send_packetdump()
  Release 5.1.0.34C
  qcacld-3.0: Fix ext_caps IE in Probe Request sent due to HB Failure
  Release 5.1.0.34B
  qcacld-3.0: Fix buffer overflow in __lim_process_roam_scan_offload_req

CRs-Fixed: 688141 1083819 1081117 1082162
Change-Id: Iec230253d1a3c666187afdd087a387dea5c49bcf
Prakash Dhavali 8 лет назад
Родитель
Сommit
155feeb14e

+ 2 - 2
core/mac/inc/qwlan_version.h

@@ -41,9 +41,9 @@
 #define QWLAN_VERSION_MAJOR            5
 #define QWLAN_VERSION_MINOR            1
 #define QWLAN_VERSION_PATCH            0
-#define QWLAN_VERSION_EXTRA            "A"
+#define QWLAN_VERSION_EXTRA            "D"
 #define QWLAN_VERSION_BUILD            34
 
-#define QWLAN_VERSIONSTR               "5.1.0.34A"
+#define QWLAN_VERSIONSTR               "5.1.0.34D"
 
 #endif /* QWLAN_VERSION_H */

+ 3 - 1
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"));

+ 5 - 5
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,

+ 5 - 4
core/mac/src/pe/lim/lim_process_sme_req_messages.c

@@ -4156,16 +4156,17 @@ static void __lim_process_roam_scan_offload_req(tpAniSirGlobal mac_ctx,
 
 	local_ie_buf = qdf_mem_malloc(MAX_DEFAULT_SCAN_IE_LEN);
 	if (!local_ie_buf) {
-		lim_log(mac_ctx, LOGE, FL("Mem Alloc failed for local_ie_buf"));
+		lim_log(mac_ctx, LOGE,
+			FL("Mem Alloc failed for local_ie_buf"));
 		return;
 	}
 
 	local_ie_len = req_buffer->assoc_ie.length;
 	/* Update ext cap IE if present */
 	if (local_ie_len &&
-		!lim_update_ext_cap_ie(mac_ctx, req_buffer->assoc_ie.addIEdata,
-					local_ie_buf, &local_ie_len)) {
-		if (local_ie_len <=
+	    !lim_update_ext_cap_ie(mac_ctx, req_buffer->assoc_ie.addIEdata,
+				   local_ie_buf, &local_ie_len)) {
+		if (local_ie_len <
 		    QDF_ARRAY_SIZE(req_buffer->assoc_ie.addIEdata)) {
 			req_buffer->assoc_ie.length = local_ie_len;
 			qdf_mem_copy(req_buffer->assoc_ie.addIEdata,

+ 2 - 0
core/utils/logging/src/wlan_logging_sock_svc.c

@@ -1331,6 +1331,8 @@ static void send_packetdump(qdf_nbuf_t netbuf, uint8_t status,
 		return;
 
 	adapter = hdd_get_adapter_by_vdev(hdd_ctx, vdev_id);
+	if (!adapter)
+		return;
 
 	/* Send packet dump only for STA interface */
 	if (adapter->device_mode != QDF_STA_MODE)