ソースを参照

qcacld-3.0: Fix memory leaks while handling few error cases in PE

Memory leaks have been noted in protocol stack in few of the error
handling cases.

Fix following APIs through releasing the memory in error cases.
lim_process_mlm_auth_req()
lim_process_mlm_set_keys_req()

CRs-Fixed: 2139571
Change-Id: Ie28861dab49ab93d90fde5ebc5fd260d1c1c4eee
Krunal Soni 7 年 前
コミット
7d78708d38
1 ファイル変更4 行追加0 行削除
  1. 4 0
      core/mac/src/pe/lim/lim_process_mlm_req_messages.c

+ 4 - 0
core/mac/src/pe/lim/lim_process_mlm_req_messages.c

@@ -1048,6 +1048,8 @@ static void lim_process_mlm_auth_req(tpAniSirGlobal mac_ctx, uint32_t *msg)
 	session = pe_find_session_by_session_id(mac_ctx, session_id);
 	if (NULL == session) {
 		pe_err("SessionId:%d does not exist", session_id);
+		qdf_mem_free(msg);
+		mac_ctx->lim.gpLimMlmAuthReq = NULL;
 		return;
 	}
 
@@ -1930,6 +1932,8 @@ lim_process_mlm_set_keys_req(tpAniSirGlobal mac_ctx, uint32_t *msg_buf)
 				mlm_set_keys_req->sessionId);
 	if (NULL == session) {
 		pe_err("session does not exist for given sessionId");
+		qdf_mem_free(mlm_set_keys_req);
+		mac_ctx->lim.gpLimMlmSetKeysReq = NULL;
 		return;
 	}