From: Alex Dewar Date: Wed, 9 Sep 2020 19:09:06 +0000 (+0100) Subject: ima: Use kmemdup rather than kmalloc+memcpy X-Git-Tag: v5.10-rc1~108^2~4 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f60c826d031817772b634c0cda37794ce6d7946a;p=thirdparty%2Fkernel%2Flinux.git ima: Use kmemdup rather than kmalloc+memcpy Issue identified with Coccinelle. Signed-off-by: Alex Dewar Signed-off-by: Mimi Zohar --- diff --git a/security/integrity/ima/ima_policy.c b/security/integrity/ima/ima_policy.c index 34221789c0920..5b4bf1790e472 100644 --- a/security/integrity/ima/ima_policy.c +++ b/security/integrity/ima/ima_policy.c @@ -353,15 +353,14 @@ static struct ima_rule_entry *ima_lsm_copy_rule(struct ima_rule_entry *entry) struct ima_rule_entry *nentry; int i; - nentry = kmalloc(sizeof(*nentry), GFP_KERNEL); - if (!nentry) - return NULL; - /* * Immutable elements are copied over as pointers and data; only * lsm rules can change */ - memcpy(nentry, entry, sizeof(*nentry)); + nentry = kmemdup(entry, sizeof(*nentry), GFP_KERNEL); + if (!nentry) + return NULL; + memset(nentry->lsm, 0, sizeof_field(struct ima_rule_entry, lsm)); for (i = 0; i < MAX_LSM_RULES; i++) {