summaryrefslogtreecommitdiffstats
path: root/include/linux/audit.h
diff options
context:
space:
mode:
authorAl Viro2008-12-15 05:45:27 +0100
committerAl Viro2009-01-04 21:14:41 +0100
commit0590b9335a1c72a3f0defcc6231287f7817e07c8 (patch)
tree289fa4668ae304f79f7484ac31b2cab0ab8894c1 /include/linux/audit.h
parentaudit_update_lsm_rules() misses the audit_inode_hash[] ones (diff)
downloadkernel-qcow2-linux-0590b9335a1c72a3f0defcc6231287f7817e07c8.tar.gz
kernel-qcow2-linux-0590b9335a1c72a3f0defcc6231287f7817e07c8.tar.xz
kernel-qcow2-linux-0590b9335a1c72a3f0defcc6231287f7817e07c8.zip
fixing audit rule ordering mess, part 1
Problem: ordering between the rules on exit chain is currently lost; all watch and inode rules are listed after everything else _and_ exit,never on one kind doesn't stop exit,always on another from being matched. Solution: assign priorities to rules, keep track of the current highest-priority matching rule and its result (always/never). Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'include/linux/audit.h')
-rw-r--r--include/linux/audit.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/audit.h b/include/linux/audit.h
index 7ddcb6a29eb1..5b47eeb00d53 100644
--- a/include/linux/audit.h
+++ b/include/linux/audit.h
@@ -373,6 +373,7 @@ struct audit_krule {
struct audit_watch *watch; /* associated watch */
struct audit_tree *tree; /* associated watched tree */
struct list_head rlist; /* entry in audit_{watch,tree}.rules list */
+ u64 prio;
};
struct audit_field {