summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGanesh Kondabattini <ganeshk@codeaurora.org>2017-05-12 11:41:15 +0530
committersnandini <snandini@codeaurora.org>2017-05-15 07:36:04 -0700
commitec4a4736dee45e2a4b2a55174433af56b6400a56 (patch)
tree7a493dbe62ca005058e048d08c2f4f1669eb4665
parent82b5d8290d9516e815cf784158d957daa671615b (diff)
qcacld-3.0: Disable connection tracker if no force peers exists
Disable tdls connection tracker if configured TDLS mode is external and there are no forced peers configured by application. CRs-Fixed: 2046405 Change-Id: I6e83947afbc0100a06b0207731828af667bf8b82
-rw-r--r--core/hdd/src/wlan_hdd_tdls.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/core/hdd/src/wlan_hdd_tdls.c b/core/hdd/src/wlan_hdd_tdls.c
index 3f5d4ff939d0..a7f16918f005 100644
--- a/core/hdd/src/wlan_hdd_tdls.c
+++ b/core/hdd/src/wlan_hdd_tdls.c
@@ -1730,8 +1730,19 @@ static void wlan_hdd_tdls_set_mode(hdd_context_t *pHddCtx,
/* tdls implicit mode is enabled, so
* enable the connection tracker
*/
- pHddCtx->enable_tdls_connection_tracker =
- true;
+ pHddCtx->enable_tdls_connection_tracker
+ = true;
+
+ if (tdls_mode == eTDLS_SUPPORT_EXTERNAL_CONTROL
+ && !pHddCtx->tdls_external_peer_count) {
+ /* Disable connection tracker if tdls
+ * mode is external and no force peers
+ * were configured by application.
+ */
+ pHddCtx->enable_tdls_connection_tracker
+ = false;
+ }
+
} else if (eTDLS_SUPPORT_DISABLED == tdls_mode) {
set_bit((unsigned long)source,
&pHddCtx->tdls_source_bitmap);