diff options
| author | Ashish Kumar Dhanotiya <adhanoti@codeaurora.org> | 2017-02-16 14:56:03 +0530 |
|---|---|---|
| committer | qcabuildsw <qcabuildsw@localhost> | 2017-03-01 22:03:36 -0800 |
| commit | 75736ecb4c915a52c247b911a8adc4e713cf534c (patch) | |
| tree | 12f62e4219d605184960107f518a38b61bbf1588 | |
| parent | 403adbaa05c271f75c67b03f0af68aeccc4bd0a2 (diff) | |
qcacld-3.0: Discard TDLS mgmt frames if violates ACM rules
qcacld-2.0 to qcacld-3.0 propagation
As per the 80211 spec, except for setup req and resp frames all
other TDLS management frames shall be transmitted with AC VI. But
this may cause packet check failure for WMM certification-STAUT
-5.2.31 when Admission control is enable for VI.
To overcome this issue discard discovery request and setup cfm
frame when ACM is set for AC VI.
Change-Id: I13da566e9de5e9a366c1efc41c0af67320305570
CRs-Fixed: 1083561
| -rw-r--r-- | core/hdd/src/wlan_hdd_tdls.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/core/hdd/src/wlan_hdd_tdls.c b/core/hdd/src/wlan_hdd_tdls.c index 35a9da0e53b8..4f1f921e7185 100644 --- a/core/hdd/src/wlan_hdd_tdls.c +++ b/core/hdd/src/wlan_hdd_tdls.c @@ -4061,6 +4061,17 @@ static int __wlan_hdd_cfg80211_tdls_mgmt(struct wiphy *wiphy, return -EPERM; } } + /* Discard TDLS Discovery request and setup confirm if violates + ACM rules */ + if ((SIR_MAC_TDLS_DIS_REQ == action_code || + SIR_MAC_TDLS_SETUP_CNF == action_code) && + (hdd_wmm_is_active(pAdapter)) && + !(pAdapter->hddWmmStatus.wmmAcStatus[OL_TX_WMM_AC_VI].wmmAcAccessAllowed)) { + QDF_TRACE(QDF_MODULE_ID_HDD, QDF_TRACE_LEVEL_ERROR, + "%s: Admission control is set to VI, action %d is not allowed.", + __func__, action_code); + return -EPERM; + } if (SIR_MAC_TDLS_SETUP_REQ == action_code || SIR_MAC_TDLS_SETUP_RSP == action_code) { |
