summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CORE/HDD/src/wlan_hdd_tdls.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/CORE/HDD/src/wlan_hdd_tdls.c b/CORE/HDD/src/wlan_hdd_tdls.c
index 11e1b9dec208..2bc7d0ca0e0f 100644
--- a/CORE/HDD/src/wlan_hdd_tdls.c
+++ b/CORE/HDD/src/wlan_hdd_tdls.c
@@ -206,6 +206,12 @@ static v_VOID_t wlan_hdd_tdls_discover_peer_cb( v_PVOID_t userData )
return;
}
+ if (WLAN_HDD_ADAPTER_MAGIC != pHddTdlsCtx->pAdapter->magic) {
+ hddLog(LOGE, FL("pAdapter has invalid magic"));
+ return;
+ }
+
+
pHddCtx = WLAN_HDD_GET_CTX( pHddTdlsCtx->pAdapter );
if (0 != (wlan_hdd_validate_context(pHddCtx)))
{
@@ -374,6 +380,11 @@ static v_VOID_t wlan_hdd_tdls_discovery_timeout_peer_cb(v_PVOID_t userData)
return;
}
+ if (WLAN_HDD_ADAPTER_MAGIC != pHddTdlsCtx->pAdapter->magic) {
+ hddLog(LOGE, FL("pAdapter has invalid magic"));
+ return;
+ }
+
pHddCtx = WLAN_HDD_GET_CTX( pHddTdlsCtx->pAdapter );
if (0 != (wlan_hdd_validate_context(pHddCtx)))
{
@@ -896,6 +907,9 @@ void wlan_hdd_tdls_exit(hdd_adapter_t *pAdapter)
}
}
+ pHddTdlsCtx->magic = 0;
+ pHddTdlsCtx->pAdapter = NULL;
+
vos_mem_free(pHddTdlsCtx);
pAdapter->sessionCtx.station.pHddTdlsCtx = NULL;
pHddTdlsCtx = NULL;