diff options
| author | Krunal Soni <ksoni@qca.qualcomm.com> | 2014-09-12 20:46:48 -0700 |
|---|---|---|
| committer | AnjaneeDevi Kapparapu <c_akappa@qti.qualcomm.com> | 2014-09-18 19:23:49 +0530 |
| commit | 443bced3e0a2aca4d7f0bfe353dc12a51dfa46f7 (patch) | |
| tree | 76d7ac919e7d7d222017133d69c355d49ea9f3a3 | |
| parent | d1b4f57d0fac097494794b6d6f06085345c008ec (diff) | |
qcacld: DFS: Drop management frames transmission during CAC.
When softap is in CAC state, any outgoing management frame is dfs
specification violation.
This fix will stop sending out management frames during CAC.
Change-Id: Icaf0d5aa4dfda3ac530df113828576405ca7942c
CRs-Fixed: 724094
| -rw-r--r-- | CORE/MAC/src/pe/lim/limSendManagementFrames.c | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/CORE/MAC/src/pe/lim/limSendManagementFrames.c b/CORE/MAC/src/pe/lim/limSendManagementFrames.c index 17f7a7857da0..41a6643ca34c 100644 --- a/CORE/MAC/src/pe/lim/limSendManagementFrames.c +++ b/CORE/MAC/src/pe/lim/limSendManagementFrames.c @@ -727,6 +727,17 @@ limSendProbeRspMgmtFrame(tpAniSirGlobal pMac, return; } + /* + * In case when cac timer is running for this SAP session then + * avoid sending probe rsp out. It is violation of dfs specification. + */ + if ((psessionEntry->pePersona == VOS_STA_SAP_MODE) && + (VOS_TRUE == pMac->sap.SapDfsInfo.is_dfs_cac_timer_running)) + { + VOS_TRACE(VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_INFO, + FL("CAC timer is running, dropping the probe response")); + return; + } smeSessionId = psessionEntry->smeSessionId; pFrm = vos_mem_malloc(sizeof(tDot11fProbeResponse)); if ( NULL == pFrm ) @@ -3945,6 +3956,17 @@ limSendDisassocMgmtFrame(tpAniSirGlobal pMac, return; } + /* + * In case when cac timer is running for this SAP session then + * avoid sending disassoc out. It is violation of dfs specification. + */ + if ((psessionEntry->pePersona == VOS_STA_SAP_MODE) && + (VOS_TRUE == pMac->sap.SapDfsInfo.is_dfs_cac_timer_running)) + { + VOS_TRACE(VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_INFO, + FL("CAC timer is running, drop disassoc from going out")); + return; + } smeSessionId = psessionEntry->smeSessionId; vos_mem_set( ( tANI_U8* )&frm, sizeof( frm ), 0); @@ -4139,6 +4161,17 @@ limSendDeauthMgmtFrame(tpAniSirGlobal pMac, return; } + /* + * In case when cac timer is running for this SAP session then + * avoid deauth frame out. It is violation of dfs specification. + */ + if ((psessionEntry->pePersona == VOS_STA_SAP_MODE) && + (VOS_TRUE == pMac->sap.SapDfsInfo.is_dfs_cac_timer_running)) + { + VOS_TRACE(VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_INFO, + FL("CAC timer is running, drop the deauth from going out")); + return; + } smeSessionId = psessionEntry->smeSessionId; vos_mem_set( ( tANI_U8* ) &frm, sizeof( frm ), 0 ); |
