From e278df1c82144f796fbeb5d9148ce09d544179a4 Mon Sep 17 00:00:00 2001 From: Peter Meerwald Date: Thu, 17 May 2012 02:28:09 +0200 Subject: [PATCH] staging: iio: add check for measurement configuration value passed to hmc5843 Signed-off-by: Peter Meerwald Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman --- drivers/staging/iio/magnetometer/hmc5843.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers/staging/iio/magnetometer/hmc5843.c b/drivers/staging/iio/magnetometer/hmc5843.c index cf2bab84871..d25b06ef807 100644 --- a/drivers/staging/iio/magnetometer/hmc5843.c +++ b/drivers/staging/iio/magnetometer/hmc5843.c @@ -281,9 +281,14 @@ static ssize_t hmc5843_set_measurement_configuration(struct device *dev, struct i2c_client *client = to_i2c_client(indio_dev->dev.parent); struct hmc5843_data *data = iio_priv(indio_dev); unsigned long meas_conf = 0; - int error = kstrtoul(buf, 10, &meas_conf); + int error; + + error = kstrtoul(buf, 10, &meas_conf); if (error) return error; + if (meas_conf >= HMC5843_MEAS_CONF_NOT_USED) + return -EINVAL; + mutex_lock(&data->lock); dev_dbg(dev, "set mode to %lu\n", meas_conf); -- 2.46.0