diff options
author | SecurityBot AutoMerger <android-nexus-securitybot@system.gserviceaccount.com> | 2019-12-20 14:12:40 -0800 |
---|---|---|
committer | SecurityBot <android-nexus-securitybot@system.gserviceaccount.com> | 2019-12-20 14:12:40 -0800 |
commit | 88de4bddbf8af01150c5f780de856c32453adf0a (patch) | |
tree | ccaaf0319b7aa07b42556d25ef97ff4159770931 /core/wma/src/wma_mgmt.c | |
parent | 9de09b5a744d931ad99e350cb6bc0642c54424a3 (diff) | |
parent | 05007d5bba53fbc4472829b39993748c1b165eb2 (diff) | |
download | qcacld-android-msm-crosshatch-4.9-r-preview-1.tar.gz |
Merge android-msm-pixel-4.9-qt-qpr2 into android-msm-pixel-4.9android-r-preview-1_r0.5android-r-preview-1_r0.3android-msm-crosshatch-4.9-r-preview-1android-msm-bonito-4.9-r-preview-1
SBMerger: 284775313
Change-Id: Ib3cf65c3cd343a76a830ec7d77d60bd863ba7a71
Signed-off-by: SecurityBot <android-nexus-securitybot@system.gserviceaccount.com>
Diffstat (limited to 'core/wma/src/wma_mgmt.c')
-rw-r--r-- | core/wma/src/wma_mgmt.c | 50 |
1 files changed, 23 insertions, 27 deletions
diff --git a/core/wma/src/wma_mgmt.c b/core/wma/src/wma_mgmt.c index 784b553901..fbd7be256a 100644 --- a/core/wma/src/wma_mgmt.c +++ b/core/wma/src/wma_mgmt.c @@ -3537,37 +3537,33 @@ static bool wma_is_pkt_drop_candidate(tp_wma_handle wma_handle, } switch (subtype) { - case SIR_MAC_MGMT_ASSOC_REQ: - if (peer->last_assoc_rcvd) { - if (qdf_get_system_timestamp() - peer->last_assoc_rcvd < - WMA_MGMT_FRAME_DETECT_DOS_TIMER) { - WMA_LOGD(FL("Dropping Assoc Req received")); - should_drop = true; - } + case IEEE80211_FC0_SUBTYPE_ASSOC_REQ: + if (peer->last_assoc_rcvd && + qdf_system_time_before(qdf_get_system_timestamp(), + peer->last_assoc_rcvd + WMA_MGMT_FRAME_DETECT_DOS_TIMER)) { + WMA_LOGD(FL("Dropping Assoc Req as it is received after %d ms of last frame. Allow it only after %d ms"), + (int) (qdf_get_system_timestamp() - + peer->last_assoc_rcvd), + WMA_MGMT_FRAME_DETECT_DOS_TIMER); + should_drop = true; + break; } peer->last_assoc_rcvd = qdf_get_system_timestamp(); break; - case SIR_MAC_MGMT_DISASSOC: - if (peer->last_disassoc_rcvd) { - if (qdf_get_system_timestamp() - - peer->last_disassoc_rcvd < - WMA_MGMT_FRAME_DETECT_DOS_TIMER) { - WMA_LOGI(FL("Dropping DisAssoc received")); - should_drop = true; - } - } - peer->last_disassoc_rcvd = qdf_get_system_timestamp(); - break; - case SIR_MAC_MGMT_DEAUTH: - if (peer->last_deauth_rcvd) { - if (qdf_get_system_timestamp() - - peer->last_deauth_rcvd < - WMA_MGMT_FRAME_DETECT_DOS_TIMER) { - WMA_LOGI(FL("Dropping Deauth received")); - should_drop = true; - } + case IEEE80211_FC0_SUBTYPE_DISASSOC: + case IEEE80211_FC0_SUBTYPE_DEAUTH: + if (peer->last_disassoc_deauth_rcvd && + qdf_system_time_before(qdf_get_system_timestamp(), + peer->last_disassoc_deauth_rcvd + + WMA_MGMT_FRAME_DETECT_DOS_TIMER)) { + WMA_LOGD(FL("Dropping subtype %x frame as it is received after %d ms of last frame. Allow it only after %d ms"), + subtype, (int) (qdf_get_system_timestamp() - + peer->last_disassoc_deauth_rcvd), + WMA_MGMT_FRAME_DETECT_DOS_TIMER); + should_drop = true; + break; } - peer->last_deauth_rcvd = qdf_get_system_timestamp(); + peer->last_disassoc_deauth_rcvd = qdf_get_system_timestamp(); break; default: break; |