From: Lars-Peter Clausen Date: Wed, 19 Oct 2011 15:51:28 +0000 (+0200) Subject: staging:iio:dac:ad5686: Check for negative values X-Git-Tag: firefly_0821_release~3680^2~4313^2^2~39 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=cd8eca6f77108617a8c47a800533f1b78a357a79;p=firefly-linux-kernel-4.4.55.git staging:iio:dac:ad5686: Check for negative values Currently it is possible to write negative values to the ad5686's raw attribute. This will cause undefined behaviour, so reject negative values. Signed-off-by: Lars-Peter Clausen Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/iio/dac/ad5686.c b/drivers/staging/iio/dac/ad5686.c index 1d50dd176215..48389e1c19f1 100644 --- a/drivers/staging/iio/dac/ad5686.c +++ b/drivers/staging/iio/dac/ad5686.c @@ -327,7 +327,7 @@ static int ad5686_write_raw(struct iio_dev *indio_dev, switch (mask) { case 0: - if (val > (1 << chan->scan_type.realbits)) + if (val > (1 << chan->scan_type.realbits) || val < 0) return -EINVAL; mutex_lock(&indio_dev->mlock);