diff options
author | 2014-05-08 11:23:53 +0300 | |
---|---|---|
committer | 2014-09-09 10:28:54 -0400 | |
commit | b4148db51720a6b25a981ea72185312d4b6634fe (patch) | |
tree | 10db80db11bb0028fa1a829162b5063b347d9bee | |
parent | ima: remove usage of filename parameter (diff) | |
download | linux-b4148db51720a6b25a981ea72185312d4b6634fe.tar.gz linux-b4148db51720a6b25a981ea72185312d4b6634fe.tar.bz2 linux-b4148db51720a6b25a981ea72185312d4b6634fe.zip |
ima: initialize only required template
IMA uses only one template. This patch initializes only required
template to avoid unnecessary memory allocations.
Signed-off-by: Dmitry Kasatkin <d.kasatkin@samsung.com>
Reviewed-by: Roberto Sassu <roberto.sassu@polito.it>
Signed-off-by: Mimi Zohar <zohar@linux.vnet.ibm.com>
-rw-r--r-- | security/integrity/ima/ima_template.c | 28 |
1 files changed, 4 insertions, 24 deletions
diff --git a/security/integrity/ima/ima_template.c b/security/integrity/ima/ima_template.c index f6826066ff0c..e854862c9337 100644 --- a/security/integrity/ima/ima_template.c +++ b/security/integrity/ima/ima_template.c @@ -152,24 +152,6 @@ out: return result; } -static int __init init_defined_templates(void) -{ - int i = 0; - int result = 0; - - /* Init defined templates. */ - for (i = 0; i < ARRAY_SIZE(defined_templates); i++) { - struct ima_template_desc *template = &defined_templates[i]; - - result = template_desc_init_fields(template->fmt, - &(template->fields), - &(template->num_fields)); - if (result < 0) - return result; - } - return result; -} - struct ima_template_desc *ima_template_desc_current(void) { if (!ima_template) @@ -180,11 +162,9 @@ struct ima_template_desc *ima_template_desc_current(void) int __init ima_init_template(void) { - int result; - - result = init_defined_templates(); - if (result < 0) - return result; + struct ima_template_desc *template = ima_template_desc_current(); - return 0; + return template_desc_init_fields(template->fmt, + &(template->fields), + &(template->num_fields)); } |