summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/mac/src/pe/lim/lim_process_disassoc_frame.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/core/mac/src/pe/lim/lim_process_disassoc_frame.c b/core/mac/src/pe/lim/lim_process_disassoc_frame.c
index cf20efaf1269..1cef599f9007 100644
--- a/core/mac/src/pe/lim/lim_process_disassoc_frame.c
+++ b/core/mac/src/pe/lim/lim_process_disassoc_frame.c
@@ -317,6 +317,19 @@ lim_process_disassoc_frame(tpAniSirGlobal pMac, uint8_t *pRxPacketInfo,
return;
}
+#ifdef FEATURE_WLAN_TDLS
+ /**
+ * Delete all the TDLS peers only if Disassoc is received
+ * from the AP
+ */
+ if ((LIM_IS_STA_ROLE(psessionEntry)) &&
+ ((pStaDs->mlmStaContext.mlmState ==
+ eLIM_MLM_LINK_ESTABLISHED_STATE) ||
+ (pStaDs->mlmStaContext.mlmState ==
+ eLIM_MLM_IDLE_STATE)) &&
+ (IS_CURRENT_BSSID(pMac, pHdr->sa, psessionEntry)))
+ lim_delete_tdls_peers(pMac, psessionEntry);
+#endif
if (pStaDs->mlmStaContext.mlmState != eLIM_MLM_LINK_ESTABLISHED_STATE) {
/**