diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2006-05-06 08:26:27 -0400 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2006-06-20 05:25:22 -0400 |
commit | 3c66251e573219a0532a5a07381b2f60a412d9eb (patch) | |
tree | b047b25d28ae1abe6bb81daba886e44e0a82094f | |
parent | f46038ff7d23ae092d61b366332c05aab8227b48 (diff) |
[PATCH] add filtering by ppid
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
-rw-r--r-- | include/linux/audit.h | 1 | ||||
-rw-r--r-- | kernel/auditsc.c | 4 |
2 files changed, 5 insertions, 0 deletions
diff --git a/include/linux/audit.h b/include/linux/audit.h index 1057e90bd3e3..8f6424f2b604 100644 --- a/include/linux/audit.h +++ b/include/linux/audit.h | |||
@@ -152,6 +152,7 @@ | |||
152 | #define AUDIT_SE_TYPE 15 /* security label type */ | 152 | #define AUDIT_SE_TYPE 15 /* security label type */ |
153 | #define AUDIT_SE_SEN 16 /* security label sensitivity label */ | 153 | #define AUDIT_SE_SEN 16 /* security label sensitivity label */ |
154 | #define AUDIT_SE_CLR 17 /* security label clearance label */ | 154 | #define AUDIT_SE_CLR 17 /* security label clearance label */ |
155 | #define AUDIT_PPID 18 | ||
155 | 156 | ||
156 | /* These are ONLY useful when checking | 157 | /* These are ONLY useful when checking |
157 | * at syscall exit time (AUDIT_AT_EXIT). */ | 158 | * at syscall exit time (AUDIT_AT_EXIT). */ |
diff --git a/kernel/auditsc.c b/kernel/auditsc.c index 4fc3867fa25a..e4551659ad79 100644 --- a/kernel/auditsc.c +++ b/kernel/auditsc.c | |||
@@ -188,6 +188,10 @@ static int audit_filter_rules(struct task_struct *tsk, | |||
188 | case AUDIT_PID: | 188 | case AUDIT_PID: |
189 | result = audit_comparator(tsk->pid, f->op, f->val); | 189 | result = audit_comparator(tsk->pid, f->op, f->val); |
190 | break; | 190 | break; |
191 | case AUDIT_PPID: | ||
192 | if (ctx) | ||
193 | result = audit_comparator(ctx->ppid, f->op, f->val); | ||
194 | break; | ||
191 | case AUDIT_UID: | 195 | case AUDIT_UID: |
192 | result = audit_comparator(tsk->uid, f->op, f->val); | 196 | result = audit_comparator(tsk->uid, f->op, f->val); |
193 | break; | 197 | break; |