[PATCH] staging: cs5535_gpio: check put_user() return code

Vasiliy Kulikov segoon at openwall.com
Mon Jan 17 10:08:49 UTC 2011


put_user() may fail, if so return -EFAULT.

Signed-off-by: Vasiliy Kulikov <segoon at openwall.com>
---
 Compile tested only.

 drivers/staging/cs5535_gpio/cs5535_gpio.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/drivers/staging/cs5535_gpio/cs5535_gpio.c b/drivers/staging/cs5535_gpio/cs5535_gpio.c
index 0cf1e5f..b25f9d1 100644
--- a/drivers/staging/cs5535_gpio/cs5535_gpio.c
+++ b/drivers/staging/cs5535_gpio/cs5535_gpio.c
@@ -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++;
 	}
 
-- 
1.7.0.4




More information about the devel mailing list