qcacld-3.0: Fix 80211 frame subtype value in DoS attacks check

Propagation from qcacld-2.0 to qcacld-3.0

The subtype values used in the Dos attacks check are not correct.
No MGMT frame will be dropped in a DoS attack.

Change-Id: I0fdcffd7151a78abf21bb0f4223aaba3e86a46ab
CRs-Fixed: 2103880
This commit is contained in:
Zhang Qian 2017-10-24 11:35:54 +08:00 • committed by snandini
commit d9bb45657e

View file

@ -3476,7 +3476,7 @@ static bool wma_is_pkt_drop_candidate(tp_wma_handle wma_handle,
peer = cdp_peer_find_by_addr(soc, pdev_ctx,
peer_addr, &peer_id);
if (!peer) {
if (SIR_MAC_MGMT_ASSOC_REQ != subtype) {
if (IEEE80211_FC0_SUBTYPE_ASSOC_REQ != subtype) {
WMA_LOGI(
FL("Received mgmt frame: %0x from unknow peer: %pM"),
subtype, peer_addr);
@ -3486,7 +3486,7 @@ static bool wma_is_pkt_drop_candidate(tp_wma_handle wma_handle,
}
switch (subtype) {
case SIR_MAC_MGMT_ASSOC_REQ:
case IEEE80211_FC0_SUBTYPE_ASSOC_REQ:
ptr = cdp_peer_last_assoc_received(soc, peer);
if (ptr == NULL) {
WMA_LOGE(FL("cdp_peer_last_assoc_received Failed"));
@ -3502,7 +3502,7 @@ static bool wma_is_pkt_drop_candidate(tp_wma_handle wma_handle,
*cdp_peer_last_assoc_received(soc, peer) =
qdf_get_system_timestamp();
break;
case SIR_MAC_MGMT_DISASSOC:
case IEEE80211_FC0_SUBTYPE_DISASSOC:
ptr = cdp_peer_last_disassoc_received(soc, peer);
if (ptr == NULL) {
WMA_LOGE(FL("cdp_peer_last_disassoc_received Failed"));
@ -3518,7 +3518,7 @@ static bool wma_is_pkt_drop_candidate(tp_wma_handle wma_handle,
*cdp_peer_last_disassoc_received(soc, peer) =
qdf_get_system_timestamp();
break;
case SIR_MAC_MGMT_DEAUTH:
case IEEE80211_FC0_SUBTYPE_DEAUTH:
ptr = cdp_peer_last_deauth_received(soc, peer);
if (ptr == NULL) {
WMA_LOGE(FL("cdp_peer_last_deauth_received Failed"));