浏览代码

vt_ioctl: return -EFAULT on copy_from_user errors

copy_from_user() returns the number of bytes remaining but we want to
return a negative error code here.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Dan Carpenter 15 年之前
父节点
当前提交
3fde85df54
共有 1 个文件被更改,包括 3 次插入1 次删除
  1. 3 1
      drivers/char/vt_ioctl.c

+ 3 - 1
drivers/char/vt_ioctl.c

@@ -1303,7 +1303,9 @@ int vt_ioctl(struct tty_struct *tty, struct file * file,
 		if (!perm)
 		if (!perm)
 			goto eperm;
 			goto eperm;
 		ret = copy_from_user(&ui, up, sizeof(struct unimapinit));
 		ret = copy_from_user(&ui, up, sizeof(struct unimapinit));
-		if (!ret)
+		if (ret)
+			ret = -EFAULT;
+		else
 			con_clear_unimap(vc, &ui);
 			con_clear_unimap(vc, &ui);
 		break;
 		break;
 	      }
 	      }