From: Markus Elfring Date: Sun, 21 Aug 2016 18:17:36 +0000 (+0200) Subject: BACKPORT: Smack: Use memdup_user() rather than duplicating its implementation X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a801bd49a55b58698b93109231bb8dbe2e8104b8;p=platform%2Fkernel%2Flinux-stable.git BACKPORT: Smack: Use memdup_user() rather than duplicating its implementation Reuse existing functionality from memdup_user() instead of keeping duplicate source code. This issue was detected by using the Coccinelle software. Signed-off-by: Markus Elfring Acked-by: Casey Schaufler (cherry-picked from upstream 63e24c497158c066583b9c06378d89ace694265a) --- diff --git a/security/smack/smackfs.c b/security/smack/smackfs.c index 94bd9e41c9ec..8ab5290fb8f3 100644 --- a/security/smack/smackfs.c +++ b/security/smack/smackfs.c @@ -2564,14 +2564,9 @@ static ssize_t smk_write_revoke_subj(struct file *file, const char __user *buf, if (count == 0 || count > SMK_LONGLABEL) return -EINVAL; - data = kzalloc(count, GFP_KERNEL); - if (data == NULL) - return -ENOMEM; - - if (copy_from_user(data, buf, count) != 0) { - rc = -EFAULT; - goto out_data; - } + data = memdup_user(buf, count); + if (IS_ERR(data)) + return PTR_ERR(data); cp = smk_parse_smack(data, count); if (IS_ERR(cp)) {