diff options
Diffstat (limited to 'security/integrity/ima/ima_audit.c')
| -rw-r--r-- | security/integrity/ima/ima_audit.c | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/security/integrity/ima/ima_audit.c b/security/integrity/ima/ima_audit.c index c586faae8fd..c5c5a72c30b 100644 --- a/security/integrity/ima/ima_audit.c +++ b/security/integrity/ima/ima_audit.c | |||
| @@ -17,6 +17,8 @@ | |||
| 17 | 17 | ||
| 18 | static int ima_audit; | 18 | static int ima_audit; |
| 19 | 19 | ||
| 20 | #ifdef CONFIG_IMA_AUDIT | ||
| 21 | |||
| 20 | /* ima_audit_setup - enable informational auditing messages */ | 22 | /* ima_audit_setup - enable informational auditing messages */ |
| 21 | static int __init ima_audit_setup(char *str) | 23 | static int __init ima_audit_setup(char *str) |
| 22 | { | 24 | { |
| @@ -27,6 +29,7 @@ static int __init ima_audit_setup(char *str) | |||
| 27 | return 1; | 29 | return 1; |
| 28 | } | 30 | } |
| 29 | __setup("ima_audit=", ima_audit_setup); | 31 | __setup("ima_audit=", ima_audit_setup); |
| 32 | #endif | ||
| 30 | 33 | ||
| 31 | void integrity_audit_msg(int audit_msgno, struct inode *inode, | 34 | void integrity_audit_msg(int audit_msgno, struct inode *inode, |
| 32 | const unsigned char *fname, const char *op, | 35 | const unsigned char *fname, const char *op, |
| @@ -39,9 +42,8 @@ void integrity_audit_msg(int audit_msgno, struct inode *inode, | |||
| 39 | 42 | ||
| 40 | ab = audit_log_start(current->audit_context, GFP_KERNEL, audit_msgno); | 43 | ab = audit_log_start(current->audit_context, GFP_KERNEL, audit_msgno); |
| 41 | audit_log_format(ab, "pid=%d uid=%u auid=%u ses=%u", | 44 | audit_log_format(ab, "pid=%d uid=%u auid=%u ses=%u", |
| 42 | current->pid, | 45 | current->pid, current_cred()->uid, |
| 43 | from_kuid(&init_user_ns, current_cred()->uid), | 46 | audit_get_loginuid(current), |
| 44 | from_kuid(&init_user_ns, audit_get_loginuid(current)), | ||
| 45 | audit_get_sessionid(current)); | 47 | audit_get_sessionid(current)); |
| 46 | audit_log_task_context(ab); | 48 | audit_log_task_context(ab); |
| 47 | audit_log_format(ab, " op="); | 49 | audit_log_format(ab, " op="); |
| @@ -54,11 +56,9 @@ void integrity_audit_msg(int audit_msgno, struct inode *inode, | |||
| 54 | audit_log_format(ab, " name="); | 56 | audit_log_format(ab, " name="); |
| 55 | audit_log_untrustedstring(ab, fname); | 57 | audit_log_untrustedstring(ab, fname); |
| 56 | } | 58 | } |
| 57 | if (inode) { | 59 | if (inode) |
| 58 | audit_log_format(ab, " dev="); | 60 | audit_log_format(ab, " dev=%s ino=%lu", |
| 59 | audit_log_untrustedstring(ab, inode->i_sb->s_id); | 61 | inode->i_sb->s_id, inode->i_ino); |
| 60 | audit_log_format(ab, " ino=%lu", inode->i_ino); | 62 | audit_log_format(ab, " res=%d", !result ? 0 : 1); |
| 61 | } | ||
| 62 | audit_log_format(ab, " res=%d", !result); | ||
| 63 | audit_log_end(ab); | 63 | audit_log_end(ab); |
| 64 | } | 64 | } |
