Explorar o código

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 %!s(int64=4) %!d(string=hai) anos
pai
achega
e128ee09ef
Modificáronse 1 ficheiros con 4 adicións e 0 borrados
  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");