qcacmn: Add check for invalid frame ctrl version

Add check for invalid frame control version while handling
raw frames with FCS errors in monitor version 2 path

Change-Id: Ia46de15a235ec5ab2f0b67ff9769cb0b5c38aeee
CRs-Fixed: 3620872
This commit is contained in:
Jeevan Kukkalli
2023-09-20 15:29:06 +05:30
committed by Rahul Choudhary
parent f9b6804db1
commit dc9d363e5b

View File

@@ -934,6 +934,15 @@ dp_rx_mon_handle_full_mon(struct dp_pdev *pdev,
mpdu_meta = (struct hal_rx_mon_mpdu_info *)qdf_nbuf_data(mpdu);
if (mpdu_meta->decap_type == HAL_HW_RX_DECAP_FORMAT_RAW) {
if (qdf_unlikely(ppdu_info->rx_status.rs_fcs_err)) {
hdr_desc = qdf_nbuf_get_frag_addr(mpdu, 0);
wh = (struct ieee80211_frame *)hdr_desc;
if ((wh->i_fc[0] & QDF_IEEE80211_FC0_VERSION_MASK) !=
QDF_IEEE80211_FC0_VERSION_0) {
DP_STATS_INC(pdev, dropped.mon_ver_err, 1);
return QDF_STATUS_E_FAILURE;
}
}
qdf_nbuf_trim_add_frag_size(mpdu,
qdf_nbuf_get_nr_frags(mpdu) - 1,
-HAL_RX_FCS_LEN, 0);