aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--security/integrity/ima/ima_api.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/security/integrity/ima/ima_api.c b/security/integrity/ima/ima_api.c
index baa348179527..5fcc80695d87 100644
--- a/security/integrity/ima/ima_api.c
+++ b/security/integrity/ima/ima_api.c
@@ -270,6 +270,8 @@ void ima_audit_measurement(struct integrity_iint_cache *iint,
270{ 270{
271 struct audit_buffer *ab; 271 struct audit_buffer *ab;
272 char hash[(iint->ima_hash->length * 2) + 1]; 272 char hash[(iint->ima_hash->length * 2) + 1];
273 const char *algo_name = hash_algo_name[iint->ima_hash->algo];
274 char algo_hash[sizeof(hash) + strlen(algo_name) + 2];
273 int i; 275 int i;
274 276
275 if (iint->flags & IMA_AUDITED) 277 if (iint->flags & IMA_AUDITED)
@@ -287,7 +289,8 @@ void ima_audit_measurement(struct integrity_iint_cache *iint,
287 audit_log_format(ab, "file="); 289 audit_log_format(ab, "file=");
288 audit_log_untrustedstring(ab, filename); 290 audit_log_untrustedstring(ab, filename);
289 audit_log_format(ab, " hash="); 291 audit_log_format(ab, " hash=");
290 audit_log_untrustedstring(ab, hash); 292 snprintf(algo_hash, sizeof(algo_hash), "%s:%s", algo_name, hash);
293 audit_log_untrustedstring(ab, algo_hash);
291 294
292 audit_log_task_info(ab, current); 295 audit_log_task_info(ab, current);
293 audit_log_end(ab); 296 audit_log_end(ab);