summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYeshwanth Sriram Guntuka <ysriramg@codeaurora.org>2021-02-27 01:07:29 +0530
committerchenpaul <chenpaul@google.com>2021-03-23 19:03:23 +0800
commitbca575c5a31b9e3e6c1bfedb9391bef3573f3c21 (patch)
tree38eab8ae2bb971b75ff47c390cd5f742ed416a86
parent02cd8a3d867cc56d86a8b60e279a0694c763e8f4 (diff)
downloadqcacld-bca575c5a31b9e3e6c1bfedb9391bef3573f3c21.tar.gz
qcacld-3.0: Drop EAPOL frame with DA different from SAP vdev mac addr
Fragmented EAPOL frames and EAPOL frames received in few error scenarios with DA different from SAP vdev mac addr will be dropped. Change-Id: I624eba5bdb43c6b88a1f57112550f8026cc35e24 CRs-Fixed: 2888227 Bug: 182958222
-rw-r--r--core/hdd/src/wlan_hdd_softap_tx_rx.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/core/hdd/src/wlan_hdd_softap_tx_rx.c b/core/hdd/src/wlan_hdd_softap_tx_rx.c
index 7e36e11da9..8995151cef 100644
--- a/core/hdd/src/wlan_hdd_softap_tx_rx.c
+++ b/core/hdd/src/wlan_hdd_softap_tx_rx.c
@@ -900,6 +900,15 @@ QDF_STATUS hdd_softap_rx_packet_cbk(void *context, qdf_nbuf_t rx_buf)
}
}
+ if (qdf_unlikely(qdf_nbuf_is_ipv4_eapol_pkt(skb) &&
+ qdf_mem_cmp(qdf_nbuf_data(skb) +
+ QDF_NBUF_DEST_MAC_OFFSET,
+ adapter->mac_addr.bytes,
+ QDF_MAC_ADDR_SIZE))) {
+ qdf_nbuf_free(skb);
+ continue;
+ }
+
hdd_event_eapol_log(skb, QDF_RX);
qdf_dp_trace_log_pkt(adapter->session_id,
skb, QDF_RX, QDF_TRACE_DEFAULT_PDEV_ID);