Procházet zdrojové kódy

qcacmn: Avoid uninitialized access from all conditional branches

Stack variable 'mlme_info' in cm_connect_complete() can lead to
uninitialized access if BSSID in 'resp' function argument is NULL.

Initialize the variable to avoid unanticipated results.

Change-Id: Id9db244c8168740e4d5c0d71959b578551773bb6
CRs-Fixed: 3576785
Vinod Kumar Pirla před 1 rokem
rodič
revize
1ad86188f4

+ 2 - 2
umac/mlme/connection_mgr/core/src/wlan_cm_connect.c

@@ -2788,7 +2788,7 @@ QDF_STATUS cm_connect_complete(struct cnx_mgr *cm_ctx,
 {
 	enum wlan_cm_sm_state sm_state;
 	struct bss_info bss_info;
-	struct mlme_info mlme_info;
+	struct mlme_info mlme_info = {0};
 	bool send_ind = true;
 
 	/*
@@ -2817,7 +2817,7 @@ QDF_STATUS cm_connect_complete(struct cnx_mgr *cm_ctx,
 	/* Update scan entry in case connect is success or fails with bssid */
 	if (!qdf_is_macaddr_zero(&resp->bssid)) {
 		if (QDF_IS_STATUS_SUCCESS(resp->connect_status))
-			mlme_info.assoc_state  = SCAN_ENTRY_CON_STATE_ASSOC;
+			mlme_info.assoc_state = SCAN_ENTRY_CON_STATE_ASSOC;
 		else
 			mlme_info.assoc_state = SCAN_ENTRY_CON_STATE_NONE;
 		qdf_copy_macaddr(&bss_info.bssid, &resp->bssid);