aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSravan Kumar Kairam <sgoud@codeaurora.org>2018-07-10 20:04:28 +0800
committerShirle Yuen <shirleyshukyee@google.com>2018-07-27 16:14:26 -0700
commit07ee0b7618f1c16c4420c29c6bfa566ce2b8f9a0 (patch)
tree8f54639234cc86bf657bf5c0e560c028a42fb667
parenta1dff508c366b95a93d9a1cef6e2e0377c1f0012 (diff)
downloadqcom-msm8x09-v3.10-07ee0b7618f1c16c4420c29c6bfa566ce2b8f9a0.tar.gz
qcacld-2.0: Fix possible OOB issue in ol_tx_desc_update_group_credit
Currently tx desc id is extracted from HTT message and it is used without check. This may cause possible OOB array read. To address this add check for valid tx desc id. Change-Id: I121fc4d550aa587f00ec315e3a20dfb136f4d7af CRs-Fixed: 2225461 Bug: 111289931 (cherry picked from commit 673b5f62dcfa83fcbd459916cde55930b82fff03)
-rw-r--r--drivers/staging/qcacld-2.0/CORE/CLD_TXRX/TXRX/ol_tx_send.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/staging/qcacld-2.0/CORE/CLD_TXRX/TXRX/ol_tx_send.c b/drivers/staging/qcacld-2.0/CORE/CLD_TXRX/TXRX/ol_tx_send.c
index bc6120b6749..1397f1121fd 100644
--- a/drivers/staging/qcacld-2.0/CORE/CLD_TXRX/TXRX/ol_tx_send.c
+++ b/drivers/staging/qcacld-2.0/CORE/CLD_TXRX/TXRX/ol_tx_send.c
@@ -805,6 +805,12 @@ ol_tx_desc_update_group_credit(ol_txrx_pdev_handle pdev, u_int16_t tx_desc_id,
uint16_t vdev_id_mask;
struct ol_tx_desc_t *tx_desc;
+ if (tx_desc_id >= pdev->tx_desc.pool_size) {
+ VOS_TRACE(VOS_MODULE_ID_TXRX, VOS_TRACE_LEVEL_ERROR,
+ "%s: Invalid desc id %d", __func__, tx_desc_id);
+ return;
+ }
+
tx_desc = ol_tx_desc_find(pdev, tx_desc_id);
for (i = 0; i < OL_TX_MAX_TXQ_GROUPS; i++) {