wlan: Validate hdd context in hdd open and hdd hostapd open apis
Currently hdd open and hdd hostapd open apis does not
validate hdd context because of which there is a possibility that
these apis may end up using invalid hdd context which may lead to
undefined behavior.
To address above issue add a check to validate hdd context in hdd
open and hdd hostapd open apis.
Change-Id: Ia5bdd67e695b2f46ce798b8ca965a68004439c11
CRs-Fixed: 2809493
diff --git a/CORE/HDD/src/wlan_hdd_hostapd.c b/CORE/HDD/src/wlan_hdd_hostapd.c
index 0cce477..c2d917e 100644
--- a/CORE/HDD/src/wlan_hdd_hostapd.c
+++ b/CORE/HDD/src/wlan_hdd_hostapd.c
@@ -190,12 +190,13 @@
pHddCtx = (hdd_context_t*)pAdapter->pHddCtx;
MTRACE(vos_trace(VOS_MODULE_ID_HDD, TRACE_CODE_HDD_OPEN_REQUEST,
pAdapter->sessionId, pAdapter->device_mode));
- if (NULL == pHddCtx)
+ if (wlan_hdd_validate_context(pHddCtx))
{
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_FATAL,
- "%s: HDD context is Null", __func__);
+ "%s: HDD context is Invalid", __func__);
return -ENODEV;
}
+
status = hdd_get_front_adapter ( pHddCtx, &pAdapterNode );
while ( (NULL != pAdapterNode) && (VOS_STATUS_SUCCESS == status) )
{
diff --git a/CORE/HDD/src/wlan_hdd_main.c b/CORE/HDD/src/wlan_hdd_main.c
index d39b65d..fc45843 100644
--- a/CORE/HDD/src/wlan_hdd_main.c
+++ b/CORE/HDD/src/wlan_hdd_main.c
@@ -8223,10 +8223,10 @@
pHddCtx = (hdd_context_t*)pAdapter->pHddCtx;
MTRACE(vos_trace(VOS_MODULE_ID_HDD, TRACE_CODE_HDD_OPEN_REQUEST,
pAdapter->sessionId, pAdapter->device_mode));
- if (NULL == pHddCtx)
+ if (wlan_hdd_validate_context(pHddCtx))
{
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_FATAL,
- "%s: HDD context is Null", __func__);
+ "%s: HDD context is Invalid", __func__);
return -ENODEV;
}