Re: [PATCH] iio: adc: ads124: avoid buffer overflow

From: Jonathan Cameron
Date: Sun Apr 07 2019 - 08:03:32 EST


On Sun, 7 Apr 2019 13:02:42 +0100
Jonathan Cameron <jic23@xxxxxxxxxxxxxxxxxxxxx> wrote:

> On Mon, 1 Apr 2019 07:41:37 -0500
> Dan Murphy <dmurphy@xxxxxx> wrote:
>
> > On 3/31/19 1:54 PM, Vincent Stehlà wrote:
> > > 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@xxxxxxxxxxx>
> > > Cc: Dan Murphy <dmurphy@xxxxxx>
> > > Cc: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>
> > > ---
> > > drivers/iio/adc/ti-ads124s08.c | 2 +-
> > > 1 file changed, 1 insertion(+), 1 deletion(-)
> > >
> > > diff --git a/drivers/iio/adc/ti-ads124s08.c b/drivers/iio/adc/ti-ads124s08.c
> > > index 53f17e4f2f230..552c2be8d87ad 100644
> > > --- a/drivers/iio/adc/ti-ads124s08.c
> > > +++ b/drivers/iio/adc/ti-ads124s08.c
> > > @@ -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)
> > >
> >
> > Reviewed-by: Dan Murphy <dmurphy@xxxxxx>
>
> Applied to the fixes-togreg branch of iio.git and pushed out as testing
> for the autobuilders to play with it.
Wrong finger memory. Not pushed out as testing. Pushed out as fixes-togreg!

Jonathan
>
> Thanks,
>
> Jonathan