diff options
| author | Al Viro <viro@zeniv.linux.org.uk> | 2006-08-31 19:26:40 -0400 |
|---|---|---|
| committer | Al Viro <viro@zeniv.linux.org.uk> | 2006-09-11 13:32:30 -0400 |
| commit | 55669bfa141b488be865341ed12e188967d11308 (patch) | |
| tree | efeec37a93f46c48937eb849c083da9a42ed3709 /arch/ia64 | |
| parent | dc104fb3231f11e95b5a0f09ae3ab27a8fd5b2e8 (diff) | |
[PATCH] audit: AUDIT_PERM support
add support for AUDIT_PERM predicate
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'arch/ia64')
| -rw-r--r-- | arch/ia64/ia32/audit.c | 16 | ||||
| -rw-r--r-- | arch/ia64/kernel/audit.c | 19 |
2 files changed, 35 insertions, 0 deletions
diff --git a/arch/ia64/ia32/audit.c b/arch/ia64/ia32/audit.c index 798501994bd9..92d7d0c8d93f 100644 --- a/arch/ia64/ia32/audit.c +++ b/arch/ia64/ia32/audit.c | |||
| @@ -19,3 +19,19 @@ unsigned ia32_read_class[] = { | |||
| 19 | #include <asm-generic/audit_read.h> | 19 | #include <asm-generic/audit_read.h> |
| 20 | ~0U | 20 | ~0U |
| 21 | }; | 21 | }; |
| 22 | |||
| 23 | int ia32_classify_syscall(unsigned syscall) | ||
| 24 | { | ||
| 25 | switch(syscall) { | ||
| 26 | case __NR_open: | ||
| 27 | return 2; | ||
| 28 | case __NR_openat: | ||
| 29 | return 3; | ||
| 30 | case __NR_socketcall: | ||
| 31 | return 4; | ||
| 32 | case __NR_execve: | ||
| 33 | return 5; | ||
| 34 | default: | ||
| 35 | return 1; | ||
| 36 | } | ||
| 37 | } | ||
diff --git a/arch/ia64/kernel/audit.c b/arch/ia64/kernel/audit.c index 99488cdbf5cd..04682555a28c 100644 --- a/arch/ia64/kernel/audit.c +++ b/arch/ia64/kernel/audit.c | |||
| @@ -23,6 +23,25 @@ static unsigned chattr_class[] = { | |||
| 23 | ~0U | 23 | ~0U |
| 24 | }; | 24 | }; |
| 25 | 25 | ||
| 26 | int audit_classify_syscall(int abi, unsigned syscall) | ||
| 27 | { | ||
| 28 | #ifdef CONFIG_IA32_SUPPORT | ||
| 29 | extern int ia32_classify_syscall(unsigned); | ||
| 30 | if (abi == AUDIT_ARCH_I386) | ||
| 31 | return ia32_classify_syscall(syscall); | ||
| 32 | #endif | ||
| 33 | switch(syscall) { | ||
| 34 | case __NR_open: | ||
| 35 | return 2; | ||
| 36 | case __NR_openat: | ||
| 37 | return 3; | ||
| 38 | case __NR_execve: | ||
| 39 | return 5; | ||
| 40 | default: | ||
| 41 | return 0; | ||
| 42 | } | ||
| 43 | } | ||
| 44 | |||
| 26 | static int __init audit_classes_init(void) | 45 | static int __init audit_classes_init(void) |
| 27 | { | 46 | { |
| 28 | #ifdef CONFIG_IA32_SUPPORT | 47 | #ifdef CONFIG_IA32_SUPPORT |
