iio: adc: ads124: avoid buffer overflow
authorVincent Stehlé <vincent.stehle@laposte.net>
Sun, 31 Mar 2019 18:54:23 +0000 (20:54 +0200)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Sun, 7 Apr 2019 12:01:36 +0000 (13:01 +0100)
When initializing the priv->data array starting from index 1, there is one
less element to consider than when initializing the full array.

Fixes: e717f8c6dfec8f76 ("iio: adc: Add the TI ads124s08 ADC code")
Signed-off-by: Vincent Stehlé <vincent.stehle@laposte.net>
Reviewed-by: Mukesh Ojha <mojha@codeaurora.org>
Reviewed-by: Dan Murphy <dmurphy@ti.com>
Cc: <Stable@vger.kernel.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/adc/ti-ads124s08.c

index 53f17e4..552c2be 100644 (file)
@@ -202,7 +202,7 @@ static int ads124s_read(struct iio_dev *indio_dev, unsigned int chan)
        };
 
        priv->data[0] = ADS124S08_CMD_RDATA;
-       memset(&priv->data[1], ADS124S08_CMD_NOP, sizeof(priv->data));
+       memset(&priv->data[1], ADS124S08_CMD_NOP, sizeof(priv->data) - 1);
 
        ret = spi_sync_transfer(priv->spi, t, ARRAY_SIZE(t));
        if (ret < 0)