aboutsummaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorKees Cook <[email protected]>2013-01-11 14:32:05 -0800
committerLinus Torvalds <[email protected]>2013-01-11 14:54:55 -0800
commit7b9205bd775afc4439ed86d617f9042ee9e76a71 (patch)
treecfb91447f15301d7daccc73bda12a63fde6a229d /include/linux
parent56ca9d98772c68368c929ab41d42108319a38da2 (diff)
audit: create explicit AUDIT_SECCOMP event type
The seccomp path was using AUDIT_ANOM_ABEND from when seccomp mode 1 could only kill a process. While we still want to make sure an audit record is forced on a kill, this should use a separate record type since seccomp mode 2 introduces other behaviors. In the case of "handled" behaviors (process wasn't killed), only emit a record if the process is under inspection. This change also fixes userspace examination of seccomp audit events, since it was considered malformed due to missing fields of the AUDIT_ANOM_ABEND event type. Signed-off-by: Kees Cook <[email protected]> Cc: Al Viro <[email protected]> Cc: Eric Paris <[email protected]> Cc: Jeff Layton <[email protected]> Cc: "Eric W. Biederman" <[email protected]> Cc: Julien Tinnes <[email protected]> Acked-by: Will Drewry <[email protected]> Acked-by: Steve Grubb <[email protected]> Cc: Andrea Arcangeli <[email protected]> Cc: <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/audit.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/include/linux/audit.h b/include/linux/audit.h
index bce729afbcf9..9d5104d7aba9 100644
--- a/include/linux/audit.h
+++ b/include/linux/audit.h
@@ -157,7 +157,8 @@ void audit_core_dumps(long signr);
static inline void audit_seccomp(unsigned long syscall, long signr, int code)
{
- if (unlikely(!audit_dummy_context()))
+ /* Force a record to be reported if a signal was delivered. */
+ if (signr || unlikely(!audit_dummy_context()))
__audit_seccomp(syscall, signr, code);
}