diff options
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 |