summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSreelakshmi Konamki <c_skonam@qti.qualcomm.com>2016-06-08 16:57:37 +0530
committerAnjaneedevi Kapparapu <akappa@codeaurora.org>2016-06-13 16:35:25 +0530
commit5413d744fe10a8fbb633ca60506a2b4ce296f104 (patch)
treef3c533ed2a8fadad552a50583ef03d90a3271b24
parentfed23690e4251681e0197cf31c22503095c5e888 (diff)
qcacld-2.0: Avoid dereferencing of NULL pointer
Fix to add NULL check before dereferencing of pointer Change-Id: Id016a65b58255b25b973c1904a9715c995f7d34a CRs-Fixed: 1022311
-rw-r--r--CORE/CLD_TXRX/TXRX/ol_tx_classify.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/CORE/CLD_TXRX/TXRX/ol_tx_classify.c b/CORE/CLD_TXRX/TXRX/ol_tx_classify.c
index 271d670fd4f1..49bd5b08b015 100644
--- a/CORE/CLD_TXRX/TXRX/ol_tx_classify.c
+++ b/CORE/CLD_TXRX/TXRX/ol_tx_classify.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2012-2015 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2012-2016 The Linux Foundation. All rights reserved.
*
* Previously licensed under the ISC license by Qualcomm Atheros, Inc.
*
@@ -347,6 +347,11 @@ ol_tx_classify(
TX_SCHED_DEBUG_PRINT("Enter %s\n", __func__);
dest_addr = ol_tx_dest_addr_find(pdev, tx_nbuf);
+ if (!dest_addr) {
+ VOS_TRACE(VOS_MODULE_ID_TXRX, VOS_TRACE_LEVEL_ERROR,
+ FL("Invalid dest_addr");
+ return NULL;
+ }
if ((IEEE80211_IS_MULTICAST(dest_addr))
|| (vdev->opmode == wlan_op_mode_ocb)) {
txq = &vdev->txqs[OL_TX_VDEV_MCAST_BCAST];
@@ -582,6 +587,11 @@ ol_tx_classify_mgmt(
TX_SCHED_DEBUG_PRINT("Enter %s\n", __func__);
dest_addr = ol_tx_dest_addr_find(pdev, tx_nbuf);
+ if (!dest_addr) {
+ VOS_TRACE(VOS_MODULE_ID_TXRX, VOS_TRACE_LEVEL_ERROR,
+ FL("Invalid dest_addr");
+ return NULL;
+ }
if (IEEE80211_IS_MULTICAST(dest_addr)) {
/*
* AP: beacons are broadcast,