Browse Source

qcacld-3.0: Validate dialog id in TWT setup request

Incorrect dialog id can cause add dialog request to target to fail.
Validate the id from user before sending it to the target.

Change-Id: Ib40b2554a1a420e9b799aab80a991fbab484667f
CRs-Fixed: 2827838
Madhvapathi Sriram 4 năm trước cách đây
mục cha
commit
e128ee09ef
1 tập tin đã thay đổi với 4 bổ sung0 xóa
  1. 4 0
      core/hdd/src/wlan_hdd_twt.c

+ 4 - 0
core/hdd/src/wlan_hdd_twt.c

@@ -147,6 +147,10 @@ int hdd_twt_get_add_dialog_values(struct nlattr **tb,
 	cmd_id = QCA_WLAN_VENDOR_ATTR_TWT_SETUP_FLOW_ID;
 	if (tb[cmd_id]) {
 		params->dialog_id = nla_get_u8(tb[cmd_id]);
+		if (params->dialog_id > TWT_MAX_DIALOG_ID) {
+			hdd_err_rl("Flow id (%u) invalid", params->dialog_id);
+			return -EINVAL;
+		}
 	} else {
 		params->dialog_id = 0;
 		hdd_debug("TWT_SETUP_FLOW_ID not specified. set to zero");