aboutsummaryrefslogtreecommitdiffstats
path: root/arch/i386
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2006-09-12 03:04:40 -0400
committerAl Viro <viro@zeniv.linux.org.uk>2006-09-12 03:04:40 -0400
commite65e1fc2d24b09c496af76e9c5253ac30b300a89 (patch)
treeb8f88773afd81ab97d5e6b79fc307523bf6b3430 /arch/i386
parent05ff0e291af086f4325bac76abad250690bbbd63 (diff)
[PATCH] syscall class hookup for all normal targets
Take default arch/*/kernel/audit.c to lib/, have those with special needs (== biarch) define AUDIT_ARCH in their Kconfig. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'arch/i386')
-rw-r--r--arch/i386/kernel/Makefile1
-rw-r--r--arch/i386/kernel/audit.c51
2 files changed, 0 insertions, 52 deletions
diff --git a/arch/i386/kernel/Makefile b/arch/i386/kernel/Makefile
index ab98fc21a541..5427a842e841 100644
--- a/arch/i386/kernel/Makefile
+++ b/arch/i386/kernel/Makefile
@@ -39,7 +39,6 @@ obj-$(CONFIG_VM86) += vm86.o
39obj-$(CONFIG_EARLY_PRINTK) += early_printk.o 39obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
40obj-$(CONFIG_HPET_TIMER) += hpet.o 40obj-$(CONFIG_HPET_TIMER) += hpet.o
41obj-$(CONFIG_K8_NB) += k8.o 41obj-$(CONFIG_K8_NB) += k8.o
42obj-$(CONFIG_AUDIT) += audit.o
43 42
44EXTRA_AFLAGS := -traditional 43EXTRA_AFLAGS := -traditional
45 44
diff --git a/arch/i386/kernel/audit.c b/arch/i386/kernel/audit.c
deleted file mode 100644
index 3b97cff41549..000000000000
--- a/arch/i386/kernel/audit.c
+++ /dev/null
@@ -1,51 +0,0 @@
1#include <linux/init.h>
2#include <linux/types.h>
3#include <linux/audit.h>
4#include <asm/unistd.h>
5
6static unsigned dir_class[] = {
7#include <asm-generic/audit_dir_write.h>
8~0U
9};
10
11static unsigned read_class[] = {
12#include <asm-generic/audit_read.h>
13~0U
14};
15
16static unsigned write_class[] = {
17#include <asm-generic/audit_write.h>
18~0U
19};
20
21static unsigned chattr_class[] = {
22#include <asm-generic/audit_change_attr.h>
23~0U
24};
25
26int audit_classify_syscall(int abi, unsigned syscall)
27{
28 switch(syscall) {
29 case __NR_open:
30 return 2;
31 case __NR_openat:
32 return 3;
33 case __NR_socketcall:
34 return 4;
35 case __NR_execve:
36 return 5;
37 default:
38 return 0;
39 }
40}
41
42static int __init audit_classes_init(void)
43{
44 audit_register_class(AUDIT_CLASS_WRITE, write_class);
45 audit_register_class(AUDIT_CLASS_READ, read_class);
46 audit_register_class(AUDIT_CLASS_DIR_WRITE, dir_class);
47 audit_register_class(AUDIT_CLASS_CHATTR, chattr_class);
48 return 0;
49}
50
51__initcall(audit_classes_init);