summaryrefslogtreecommitdiffstats
path: root/security/integrity/ima/ima_template_lib.h
diff options
context:
space:
mode:
authorRoberto Sassu2013-06-07 12:16:30 +0200
committerMimi Zohar2013-10-25 23:17:05 +0200
commit3ce1217d6cd5dfa82a9db5c2a999cc1bb01490d9 (patch)
tree4645a20eaa70b3dc5dd4654fa31a7cf132291fd5 /security/integrity/ima/ima_template_lib.h
parentima: new templates management mechanism (diff)
downloadkernel-qcow2-linux-3ce1217d6cd5dfa82a9db5c2a999cc1bb01490d9.tar.gz
kernel-qcow2-linux-3ce1217d6cd5dfa82a9db5c2a999cc1bb01490d9.tar.xz
kernel-qcow2-linux-3ce1217d6cd5dfa82a9db5c2a999cc1bb01490d9.zip
ima: define template fields library and new helpers
This patch defines a library containing two initial template fields, inode digest (d) and file name (n), the 'ima' template descriptor, whose format is 'd|n', and two helper functions, ima_write_template_field_data() and ima_show_template_field_data(). Changelog: - replace ima_eventname_init() parameter NULL checking with BUG_ON. (suggested by Mimi) - include "new template fields for inode digest (d) and file name (n)" definitions to fix a compiler warning. - Mimi - unnecessary to prefix static function names with 'ima_'. remove prefix to resolve Lindent formatting changes. - Mimi - abbreviated/removed inline comments - Mimi - always send the template field length - Mimi Signed-off-by: Roberto Sassu <roberto.sassu@polito.it> Signed-off-by: Mimi Zohar <zohar@linux.vnet.ibm.com>
Diffstat (limited to 'security/integrity/ima/ima_template_lib.h')
-rw-r--r--security/integrity/ima/ima_template_lib.h31
1 files changed, 31 insertions, 0 deletions
diff --git a/security/integrity/ima/ima_template_lib.h b/security/integrity/ima/ima_template_lib.h
new file mode 100644
index 000000000000..2cecc83a928d
--- /dev/null
+++ b/security/integrity/ima/ima_template_lib.h
@@ -0,0 +1,31 @@
+/*
+ * Copyright (C) 2013 Politecnico di Torino, Italy
+ * TORSEC group -- http://security.polito.it
+ *
+ * Author: Roberto Sassu <roberto.sassu@polito.it>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation, version 2 of the
+ * License.
+ *
+ * File: ima_template_lib.h
+ * Header for the library of supported template fields.
+ */
+#ifndef __LINUX_IMA_TEMPLATE_LIB_H
+#define __LINUX_IMA_TEMPLATE_LIB_H
+
+#include <linux/seq_file.h>
+#include "ima.h"
+
+void ima_show_template_digest(struct seq_file *m, enum ima_show_type show,
+ struct ima_field_data *field_data);
+void ima_show_template_string(struct seq_file *m, enum ima_show_type show,
+ struct ima_field_data *field_data);
+int ima_eventdigest_init(struct integrity_iint_cache *iint, struct file *file,
+ const unsigned char *filename,
+ struct ima_field_data *field_data);
+int ima_eventname_init(struct integrity_iint_cache *iint, struct file *file,
+ const unsigned char *filename,
+ struct ima_field_data *field_data);
+#endif /* __LINUX_IMA_TEMPLATE_LIB_H */