From 615d4bbfffc0ed49c9173e82c27d7a5bf3cec5c8 Mon Sep 17 00:00:00 2001 From: Jeff Johnson Date: Wed, 20 Jul 2016 11:03:04 -0700 Subject: qcacld-3.0: Avoid NULL dereference in hdd_init_qdf_ctx() Currently hdd_init_qdf_ctx() calls cds_get_context() to retrieve the QDF Device context, and then writes into the context without validating the pointer. Add logic to validate the pointer before using it. Change-Id: Ib427d1348b3ff5b13689e24f69e4606f23ea767c CRs-Fixed: 1042043 --- core/hdd/src/wlan_hdd_driver_ops.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/core/hdd/src/wlan_hdd_driver_ops.c b/core/hdd/src/wlan_hdd_driver_ops.c index c80913a21ed4..f6fa4d7c6c94 100644 --- a/core/hdd/src/wlan_hdd_driver_ops.c +++ b/core/hdd/src/wlan_hdd_driver_ops.c @@ -294,6 +294,11 @@ void hdd_init_qdf_ctx(struct device *dev, void *bdev, { qdf_device_t qdf_dev = cds_get_context(QDF_MODULE_ID_QDF_DEVICE); + if (!qdf_dev) { + hdd_err("Invalid QDF device"); + return; + } + qdf_dev->dev = dev; qdf_dev->drv_hdl = bdev; qdf_dev->bus_type = bus_type; -- cgit v1.2.3