Просмотр исходного кода

sel_write_validatetrans(): don't open-code memdup_user_nul()

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Al Viro 8 лет назад
Родитель
Сommit
0b884d25f5
1 измененных файлов с 5 добавлено и 7 удалено
  1. 5 7
      security/selinux/selinuxfs.c

+ 5 - 7
security/selinux/selinuxfs.c

@@ -656,14 +656,12 @@ static ssize_t sel_write_validatetrans(struct file *file,
 	if (*ppos != 0)
 		goto out;
 
-	rc = -ENOMEM;
-	req = kzalloc(count + 1, GFP_KERNEL);
-	if (!req)
-		goto out;
-
-	rc = -EFAULT;
-	if (copy_from_user(req, buf, count))
+	req = memdup_user_nul(buf, count);
+	if (IS_ERR(req)) {
+		rc = PTR_ERR(req);
+		req = NULL;
 		goto out;
+	}
 
 	rc = -ENOMEM;
 	oldcon = kzalloc(count + 1, GFP_KERNEL);