Prechádzať zdrojové kódy

qcacmn: Fix use-after-free access in wmi_unified_detach

wmi_handle is accessed after free to set wow_enable_ack_failed flag.
Move this to correct place to fix use-after-free access

Change-Id: I8cc956bd433776adda3ff6cca26e7c164877184d
CRs-Fixed: 3485102
Shivam Kumar 2 rokov pred
rodič
commit
c56fd10862
1 zmenil súbory, kde vykonal 1 pridanie a 2 odobranie
  1. 1 2
      wmi/src/wmi_unified.c

+ 1 - 2
wmi/src/wmi_unified.c

@@ -3394,6 +3394,7 @@ void wmi_unified_detach(struct wmi_unified *wmi_handle)
 
 			wmi_interface_sequence_deinit(soc->wmi_pdev[i]);
 			wmi_ext_dbgfs_deinit(soc->wmi_pdev[i]);
+			wmi_clear_wow_enable_ack_failed(soc->wmi_pdev[i]);
 
 			qdf_mem_free(soc->wmi_pdev[i]);
 		}
@@ -3415,8 +3416,6 @@ void wmi_unified_detach(struct wmi_unified *wmi_handle)
 		soc->wmi_ext2_service_bitmap = NULL;
 	}
 
-	wmi_clear_wow_enable_ack_failed(wmi_handle);
-
 	/* Decrease the ref count once refcount infra is present */
 	soc->wmi_psoc = NULL;
 	qdf_mem_free(soc);