ima: initialize only required template
authorDmitry Kasatkin <d.kasatkin@samsung.com>
Thu, 8 May 2014 08:23:53 +0000 (11:23 +0300)
committerMimi Zohar <zohar@linux.vnet.ibm.com>
Tue, 9 Sep 2014 14:28:54 +0000 (10:28 -0400)
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>
security/integrity/ima/ima_template.c

index f682606..e854862 100644 (file)
@@ -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));
 }