소스 검색

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

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Al Viro 8 년 전
부모
커밋
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);