diff options
author | James Morris <jmorris@namei.org> | 2010-11-29 08:27:07 +1100 |
---|---|---|
committer | James Morris <jmorris@namei.org> | 2010-11-29 08:27:07 +1100 |
commit | 1d6d75684d869406e5bb2ac5d3ed9454f52d0cab (patch) | |
tree | afb229254bed6415407b7b7d4641f9f792109966 /drivers/hwmon/lm95241.c | |
parent | kernel: add roundup() code comment from akpm (diff) | |
parent | Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 (diff) | |
download | linux-dev-1d6d75684d869406e5bb2ac5d3ed9454f52d0cab.tar.xz linux-dev-1d6d75684d869406e5bb2ac5d3ed9454f52d0cab.zip |
Merge branch 'master' into next
Diffstat (limited to 'drivers/hwmon/lm95241.c')
-rw-r--r-- | drivers/hwmon/lm95241.c | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/drivers/hwmon/lm95241.c b/drivers/hwmon/lm95241.c index 464340f25496..4546d82f024a 100644 --- a/drivers/hwmon/lm95241.c +++ b/drivers/hwmon/lm95241.c @@ -128,9 +128,12 @@ static ssize_t set_interval(struct device *dev, struct device_attribute *attr, { struct i2c_client *client = to_i2c_client(dev); struct lm95241_data *data = i2c_get_clientdata(client); + unsigned long val; - strict_strtol(buf, 10, &data->interval); - data->interval = data->interval * HZ / 1000; + if (strict_strtoul(buf, 10, &val) < 0) + return -EINVAL; + + data->interval = val * HZ / 1000; return count; } @@ -188,7 +191,9 @@ static ssize_t set_type##flag(struct device *dev, \ struct lm95241_data *data = i2c_get_clientdata(client); \ \ long val; \ - strict_strtol(buf, 10, &val); \ +\ + if (strict_strtol(buf, 10, &val) < 0) \ + return -EINVAL; \ \ if ((val == 1) || (val == 2)) { \ \ @@ -227,7 +232,9 @@ static ssize_t set_min##flag(struct device *dev, \ struct lm95241_data *data = i2c_get_clientdata(client); \ \ long val; \ - strict_strtol(buf, 10, &val); \ +\ + if (strict_strtol(buf, 10, &val) < 0) \ + return -EINVAL;\ \ mutex_lock(&data->update_lock); \ \ @@ -256,7 +263,9 @@ static ssize_t set_max##flag(struct device *dev, \ struct lm95241_data *data = i2c_get_clientdata(client); \ \ long val; \ - strict_strtol(buf, 10, &val); \ +\ + if (strict_strtol(buf, 10, &val) < 0) \ + return -EINVAL; \ \ mutex_lock(&data->update_lock); \ \ |