Explorar o código

qcacld-3.0: Check vdev_id against wma->max_bssid

Check vdev_id against wma->max_bssid in wma_mcc_vdev_tx_pause_evt_handler to
avoid bufer overflow.

Change-Id: Ie47a0ed2f7f27f13a01e1b2cb365fae66b41b1df
CRs-Fixed: 2120677
Naveen Rawat %!s(int64=7) %!d(string=hai) anos
pai
achega
60f39da929
Modificáronse 1 ficheiros con 2 adicións e 1 borrados
  1. 2 1
      core/wma/src/wma_data.c

+ 2 - 1
core/wma/src/wma_data.c

@@ -1641,7 +1641,8 @@ int wma_mcc_vdev_tx_pause_evt_handler(void *handle, uint8_t *event,
 	 * vdev_map = (1 << vdev_id)
 	 * So, host should unmap to ID
 	 */
-	for (vdev_id = 0; vdev_map != 0; vdev_id++) {
+	for (vdev_id = 0; vdev_map != 0 && vdev_id < wma->max_bssid;
+	     vdev_id++) {
 		if (!(vdev_map & 0x1)) {
 			/* No Vdev */
 		} else {