[PATCH] security: ima: make use of kmemdup

From: Saiyam Doshi
Date: Fri Sep 13 2019 - 12:35:22 EST


Replace call to kmalloc followed by memcpy with a direct call
to kmemdup to achieve same functionality.

Signed-off-by: Saiyam Doshi <saiyamdoshi.in@xxxxxxxxx>
---
security/integrity/ima/ima_policy.c | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/security/integrity/ima/ima_policy.c b/security/integrity/ima/ima_policy.c
index 6df7f641ff66..1bd77c5eaeb7 100644
--- a/security/integrity/ima/ima_policy.c
+++ b/security/integrity/ima/ima_policy.c
@@ -262,15 +262,14 @@ static struct ima_rule_entry *ima_lsm_copy_rule(struct ima_rule_entry *entry)
struct ima_rule_entry *nentry;
int i, result;

- 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, FIELD_SIZEOF(struct ima_rule_entry, lsm));

for (i = 0; i < MAX_LSM_RULES; i++) {
--
2.20.1