diff options
author | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-07-22 14:18:20 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-07-22 14:18:20 -0400 |
commit | dd6ccfe64dad4ea498392805b477308abef43a4c (patch) | |
tree | ed632bc216ddfe893946587ecc523acade66f9a6 /include | |
parent | dc79747019b43c28d1f50aad69b8039f8d8db301 (diff) | |
parent | 4259fa01a2d2aa3e589b34ba7624080232d9c1ff (diff) |
Merge branch 'audit.b39' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current
* 'audit.b39' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current:
[PATCH] get rid of AVC_PATH postponed treatment
[PATCH] allow audit filtering on bit & operations
[PATCH] audit: fix broken class-based syscall audit
[PATCH] Make IPC mode consistent
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/audit.h | 32 |
1 files changed, 17 insertions, 15 deletions
diff --git a/include/linux/audit.h b/include/linux/audit.h index 8ca7ca0b47f0..4bbd8601b8f0 100644 --- a/include/linux/audit.h +++ b/include/linux/audit.h | |||
@@ -161,7 +161,7 @@ | |||
161 | * are currently used in an audit field constant understood by the kernel. | 161 | * are currently used in an audit field constant understood by the kernel. |
162 | * If you are adding a new #define AUDIT_<whatever>, please ensure that | 162 | * If you are adding a new #define AUDIT_<whatever>, please ensure that |
163 | * AUDIT_UNUSED_BITS is updated if need be. */ | 163 | * AUDIT_UNUSED_BITS is updated if need be. */ |
164 | #define AUDIT_UNUSED_BITS 0x0FFFFC00 | 164 | #define AUDIT_UNUSED_BITS 0x07FFFC00 |
165 | 165 | ||
166 | 166 | ||
167 | /* Rule fields */ | 167 | /* Rule fields */ |
@@ -213,25 +213,29 @@ | |||
213 | #define AUDIT_NEGATE 0x80000000 | 213 | #define AUDIT_NEGATE 0x80000000 |
214 | 214 | ||
215 | /* These are the supported operators. | 215 | /* These are the supported operators. |
216 | * 4 2 1 | 216 | * 4 2 1 8 |
217 | * = > < | 217 | * = > < ? |
218 | * ------- | 218 | * ---------- |
219 | * 0 0 0 0 nonsense | 219 | * 0 0 0 0 00 nonsense |
220 | * 0 0 1 1 < | 220 | * 0 0 0 1 08 & bit mask |
221 | * 0 1 0 2 > | 221 | * 0 0 1 0 10 < |
222 | * 0 1 1 3 != | 222 | * 0 1 0 0 20 > |
223 | * 1 0 0 4 = | 223 | * 0 1 1 0 30 != |
224 | * 1 0 1 5 <= | 224 | * 1 0 0 0 40 = |
225 | * 1 1 0 6 >= | 225 | * 1 0 0 1 48 &= bit test |
226 | * 1 1 1 7 all operators | 226 | * 1 0 1 0 50 <= |
227 | * 1 1 0 0 60 >= | ||
228 | * 1 1 1 1 78 all operators | ||
227 | */ | 229 | */ |
230 | #define AUDIT_BIT_MASK 0x08000000 | ||
228 | #define AUDIT_LESS_THAN 0x10000000 | 231 | #define AUDIT_LESS_THAN 0x10000000 |
229 | #define AUDIT_GREATER_THAN 0x20000000 | 232 | #define AUDIT_GREATER_THAN 0x20000000 |
230 | #define AUDIT_NOT_EQUAL 0x30000000 | 233 | #define AUDIT_NOT_EQUAL 0x30000000 |
231 | #define AUDIT_EQUAL 0x40000000 | 234 | #define AUDIT_EQUAL 0x40000000 |
235 | #define AUDIT_BIT_TEST (AUDIT_BIT_MASK|AUDIT_EQUAL) | ||
232 | #define AUDIT_LESS_THAN_OR_EQUAL (AUDIT_LESS_THAN|AUDIT_EQUAL) | 236 | #define AUDIT_LESS_THAN_OR_EQUAL (AUDIT_LESS_THAN|AUDIT_EQUAL) |
233 | #define AUDIT_GREATER_THAN_OR_EQUAL (AUDIT_GREATER_THAN|AUDIT_EQUAL) | 237 | #define AUDIT_GREATER_THAN_OR_EQUAL (AUDIT_GREATER_THAN|AUDIT_EQUAL) |
234 | #define AUDIT_OPERATORS (AUDIT_EQUAL|AUDIT_NOT_EQUAL) | 238 | #define AUDIT_OPERATORS (AUDIT_EQUAL|AUDIT_NOT_EQUAL|AUDIT_BIT_MASK) |
235 | 239 | ||
236 | /* Status symbols */ | 240 | /* Status symbols */ |
237 | /* Mask values */ | 241 | /* Mask values */ |
@@ -407,7 +411,6 @@ extern int audit_bprm(struct linux_binprm *bprm); | |||
407 | extern int audit_socketcall(int nargs, unsigned long *args); | 411 | extern int audit_socketcall(int nargs, unsigned long *args); |
408 | extern int audit_sockaddr(int len, void *addr); | 412 | extern int audit_sockaddr(int len, void *addr); |
409 | extern int __audit_fd_pair(int fd1, int fd2); | 413 | extern int __audit_fd_pair(int fd1, int fd2); |
410 | extern int audit_avc_path(struct dentry *dentry, struct vfsmount *mnt); | ||
411 | extern int audit_set_macxattr(const char *name); | 414 | extern int audit_set_macxattr(const char *name); |
412 | extern int __audit_mq_open(int oflag, mode_t mode, struct mq_attr __user *u_attr); | 415 | extern int __audit_mq_open(int oflag, mode_t mode, struct mq_attr __user *u_attr); |
413 | extern int __audit_mq_timedsend(mqd_t mqdes, size_t msg_len, unsigned int msg_prio, const struct timespec __user *u_abs_timeout); | 416 | extern int __audit_mq_timedsend(mqd_t mqdes, size_t msg_len, unsigned int msg_prio, const struct timespec __user *u_abs_timeout); |
@@ -487,7 +490,6 @@ extern int audit_signals; | |||
487 | #define audit_socketcall(n,a) ({ 0; }) | 490 | #define audit_socketcall(n,a) ({ 0; }) |
488 | #define audit_fd_pair(n,a) ({ 0; }) | 491 | #define audit_fd_pair(n,a) ({ 0; }) |
489 | #define audit_sockaddr(len, addr) ({ 0; }) | 492 | #define audit_sockaddr(len, addr) ({ 0; }) |
490 | #define audit_avc_path(dentry, mnt) ({ 0; }) | ||
491 | #define audit_set_macxattr(n) do { ; } while (0) | 493 | #define audit_set_macxattr(n) do { ; } while (0) |
492 | #define audit_mq_open(o,m,a) ({ 0; }) | 494 | #define audit_mq_open(o,m,a) ({ 0; }) |
493 | #define audit_mq_timedsend(d,l,p,t) ({ 0; }) | 495 | #define audit_mq_timedsend(d,l,p,t) ({ 0; }) |