From: Vasiliy Kulikov <[email protected]>

Function put_user may fail. Check for it.

Signed-off-by: Vasiliy Kulikov <[email protected]>
---
 I couldn't compile this driver at all, so it is not tested.

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

diff --git a/drivers/staging/comedi/comedi_fops.c 
b/drivers/staging/comedi/comedi_fops.c
index 1409131..a3c7183 100644
--- a/drivers/staging/comedi/comedi_fops.c
+++ b/drivers/staging/comedi/comedi_fops.c
@@ -537,7 +537,8 @@ static int do_chaninfo_ioctl(struct comedi_device *dev,
 
                        x = (dev->minor << 28) | (it.subdev << 24) | (i << 16) |
                            (s->range_table_list[i]->length);
-                       put_user(x, it.rangelist + i);
+                       if (put_user(x, it.rangelist + i))
+                               return -EFAULT;
                }
 #if 0
                if (copy_to_user(it.rangelist, s->range_type_list,
-- 
1.7.0.4

_______________________________________________
devel mailing list
[email protected]
http://driverdev.linuxdriverproject.org/mailman/listinfo/devel

Reply via email to