Selaa lähdekoodia

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 vuotta sitten
vanhempi
sitoutus
e128ee09ef
1 muutettua tiedostoa jossa 4 lisäystä ja 0 poistoa
  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");