staging: cs5535_gpio: check put_user() return code
authorVasiliy Kulikov <segoon@openwall.com>
Mon, 17 Jan 2011 10:08:49 +0000 (13:08 +0300)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 21 Jan 2011 20:35:14 +0000 (12:35 -0800)
put_user() may fail, if so return -EFAULT.

Signed-off-by: Vasiliy Kulikov <segoon@openwall.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/staging/cs5535_gpio/cs5535_gpio.c

index 0cf1e5fad9ababdfebca61e37ae7b919318b3a6c..b25f9d103b3bc38f937619e665b5902ee46067cb 100644 (file)
@@ -146,7 +146,8 @@ static ssize_t cs5535_gpio_read(struct file *file, char __user *buf,
 
        /* add a line-feed if there is room */
        if ((i == ARRAY_SIZE(rm)) && (count < len)) {
-               put_user('\n', buf + count);
+               if (put_user('\n', buf + count))
+                       return -EFAULT;
                count++;
        }