Browse Source

qcacld-3.0: Fix infinite for loop in wlansap_update_csa_channel_params

In wlansap_update_csa_channel_params if channel is not present in
op class table the for loop become infinite.

Add check to break the loop if BW is 20 and still entry is not found
in op class table.

Change-Id: I6ef6bc138a8df0e18b54bd16a47eba23b437616d
CRs-Fixed: 2373915
Abhishek Singh 6 năm trước cách đây
mục cha
commit
caebb463d7
1 tập tin đã thay đổi với 5 bổ sung1 xóa
  1. 5 1
      core/sap/src/sap_module.c

+ 5 - 1
core/sap/src/sap_module.c

@@ -1177,7 +1177,11 @@ wlansap_update_csa_channel_params(struct sap_context *sap_context,
 			op_class = wlan_reg_dmn_get_opclass_from_channel(
 					mac_ctx->scan.countryCodeCurrent,
 					channel, bw);
-			if (!op_class)
+			/*
+			 * Do not continue if bw is 20. This mean channel is not
+			 * found and thus set BW20 for the channel.
+			 */
+			if (!op_class && bw > BW20)
 				continue;
 
 			if (bw == BW80) {