Răsfoiți Sursa

qca-wifi: Free nbuf on bpr disabled case only

If tx capture, sniffer are not enabled, mgmt nbuf is freed.
It is causing use-after-free in bpr enabled case

Added change to free only when bpr is disabled

CRs-Fixed: 2662214
Change-Id: I0d889f371cf47047200f70563b589fac99733c49
Srinivas Pitla 5 ani în urmă
părinte
comite
3e6eb3562a
1 a modificat fișierele cu 2 adăugiri și 2 ștergeri
  1. 2 2
      dp/wifi3.0/dp_tx_capture.c

+ 2 - 2
dp/wifi3.0/dp_tx_capture.c

@@ -419,8 +419,8 @@ void dp_deliver_mgmt_frm(struct dp_pdev *pdev, qdf_nbuf_t nbuf)
 			ptr_mgmt_hdr->ppdu_id, wh->i_fc[1], wh->i_fc[0],
 			wh->i_dur[1], wh->i_dur[0]);
 	} else {
-		qdf_nbuf_free(nbuf);
-		return;
+		if (!pdev->bpr_enable)
+			qdf_nbuf_free(nbuf);
 	}
 }