Selaa lähdekoodia

qcacmn: Add dma length sanity check

Add sanity check for CFR payload length in case of QCA5018
before relaying CFR data buffers to user space.

Change-Id: I81f37bebd3b9372606906fc87ce8ee90fe4809a1
CRs-Fixed: 2855173
Adwait Nayak 4 vuotta sitten
vanhempi
sitoutus
2a0231fa54
1 muutettua tiedostoa jossa 5 lisäystä ja 0 poistoa
  1. 5 0
      target_if/cfr/src/target_if_cfr_enh.c

+ 5 - 0
target_if/cfr/src/target_if_cfr_enh.c

@@ -552,6 +552,11 @@ static QDF_STATUS check_dma_length(struct look_up_table *lut,
 		    lut->payload_length <= SPRUCE_MAX_DATA_LENGTH_BYTES) {
 			return QDF_STATUS_SUCCESS;
 		}
+	} else if (target_type == TARGET_TYPE_QCA5018) {
+		if (lut->header_length <= MAPLE_MAX_HEADER_LENGTH_WORDS &&
+		    lut->payload_length <= MAPLE_MAX_DATA_LENGTH_BYTES) {
+			return QDF_STATUS_SUCCESS;
+		}
 	} else {
 		if (lut->header_length <= CYP_MAX_HEADER_LENGTH_WORDS &&
 		    lut->payload_length <= CYP_MAX_DATA_LENGTH_BYTES) {