@@ -131,6 +131,7 @@ extern bool ima_canonical_fmt;
/* Internal IMA function definitions */
int ima_init(void);
int ima_fs_init(void);
+int ima_get_template_entry_size(struct ima_template_entry *entry);
int ima_add_template_entry(struct ima_template_entry *entry, int violation,
const char *op, struct inode *inode,
const unsigned char *filename);
@@ -74,7 +74,7 @@ static struct ima_queue_entry *ima_lookup_digest_entry(u8 *digest_value,
* binary_runtime_measurement list entry, which contains a
* couple of variable length fields (e.g template name and data).
*/
-static int get_binary_runtime_size(struct ima_template_entry *entry)
+int ima_get_template_entry_size(struct ima_template_entry *entry)
{
int size = 0;
@@ -118,7 +118,7 @@ static int ima_add_digest_entry(struct ima_template_entry *entry,
if (binary_runtime_size != ULONG_MAX) {
int size;
- size = get_binary_runtime_size(entry);
+ size = ima_get_template_entry_size(entry);
binary_runtime_size = (binary_runtime_size < ULONG_MAX - size) ?
binary_runtime_size + size : ULONG_MAX;
}
The function get_binary_runtime_size(), renamed to ima_get_template_entry_size(), is now declared as non-static, so that it can be used by callers outside ima_queue.c to calculate the size of a given measurement entry. Signed-off-by: Roberto Sassu <roberto.sassu@huawei.com> --- security/integrity/ima/ima.h | 1 + security/integrity/ima/ima_queue.c | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-)