From 8d583a86959b63ea20cee0df568b89fb2378dbd4 Mon Sep 17 00:00:00 2001 From: Venkata Sharath Chandra Manchala Date: Sun, 21 Apr 2019 12:32:24 -0700 Subject: [PATCH] qcacmn: Validate mac_id for txrx_stats Add a sanity check to avoid sending a htt txrx_stats request with an invalid mac_id parameter to firmware. Change-Id: Iae980bbffdcf6759b6d467849c5ebc65628f17ba Crs-Fixed: 2438693 --- dp/wifi3.0/dp_main.c | 5 +++++ wlan_cfg/cfg_dp.h | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/dp/wifi3.0/dp_main.c b/dp/wifi3.0/dp_main.c index 327297ef2058..bff9a4412800 100644 --- a/dp/wifi3.0/dp_main.c +++ b/dp/wifi3.0/dp_main.c @@ -8891,6 +8891,11 @@ QDF_STATUS dp_txrx_stats_request(struct cdp_vdev *vdev, return QDF_STATUS_E_INVAL; } + if (req->mac_id >= WLAN_CFG_MAC_PER_TARGET) { + dp_err("Invalid mac id request"); + return QDF_STATUS_E_INVAL; + } + stats = req->stats; if (stats >= CDP_TXRX_MAX_STATS) return QDF_STATUS_E_INVAL; diff --git a/wlan_cfg/cfg_dp.h b/wlan_cfg/cfg_dp.h index 88ed025aeafd..9b10fe0fb4ed 100644 --- a/wlan_cfg/cfg_dp.h +++ b/wlan_cfg/cfg_dp.h @@ -58,6 +58,7 @@ #define WLAN_CFG_PER_PDEV_RX_RING 0 #define WLAN_CFG_PER_PDEV_LMAC_RING 0 #define WLAN_LRO_ENABLE 0 +#define WLAN_CFG_MAC_PER_TARGET 2 #ifdef IPA_OFFLOAD /* Size of TCL TX Ring */ #define WLAN_CFG_TX_RING_SIZE 1024 @@ -98,7 +99,7 @@ #define WLAN_CFG_PER_PDEV_RX_RING 0 #define WLAN_CFG_PER_PDEV_LMAC_RING 1 #define WLAN_LRO_ENABLE 0 - +#define WLAN_CFG_MAC_PER_TARGET 3 /* Tx Descriptor and Tx Extension Descriptor pool sizes */ #ifndef QCA_WIFI_QCA8074_VP #define WLAN_CFG_NUM_TX_DESC 0x320000