diff options
| author | Al Viro <viro@zeniv.linux.org.uk> | 2006-08-31 19:02:42 -0400 |
|---|---|---|
| committer | Al Viro <viro@zeniv.linux.org.uk> | 2006-09-11 13:32:25 -0400 |
| commit | c08037997d4ae3e9a679fbdb46ed47c957916e14 (patch) | |
| tree | 952bc446670f19efb3a008f4846905d50ef235fd | |
| parent | 5974501e2d44546748e67c635cec20ba66619a3d (diff) | |
[PATCH] syscall classes hookup for ppc and s390
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| -rw-r--r-- | arch/powerpc/kernel/Makefile | 2 | ||||
| -rw-r--r-- | arch/powerpc/kernel/audit.c | 29 | ||||
| -rw-r--r-- | arch/powerpc/kernel/compat_audit.c | 12 | ||||
| -rw-r--r-- | arch/s390/kernel/Makefile | 4 | ||||
| -rw-r--r-- | arch/s390/kernel/audit.c | 29 | ||||
| -rw-r--r-- | arch/s390/kernel/compat_audit.c | 12 |
6 files changed, 87 insertions, 1 deletions
diff --git a/arch/powerpc/kernel/Makefile b/arch/powerpc/kernel/Makefile index 956c2e5564b7..7d32ad0194a4 100644 --- a/arch/powerpc/kernel/Makefile +++ b/arch/powerpc/kernel/Makefile | |||
| @@ -70,6 +70,8 @@ obj-$(CONFIG_PCI) += $(pci64-y) $(pci32-y) | |||
| 70 | kexec-$(CONFIG_PPC64) := machine_kexec_64.o | 70 | kexec-$(CONFIG_PPC64) := machine_kexec_64.o |
| 71 | kexec-$(CONFIG_PPC32) := machine_kexec_32.o | 71 | kexec-$(CONFIG_PPC32) := machine_kexec_32.o |
| 72 | obj-$(CONFIG_KEXEC) += machine_kexec.o crash.o $(kexec-y) | 72 | obj-$(CONFIG_KEXEC) += machine_kexec.o crash.o $(kexec-y) |
| 73 | obj-$(CONFIG_AUDIT) += audit.o | ||
| 74 | obj64-$(CONFIG_AUDIT) += compat_audit.o | ||
| 73 | 75 | ||
| 74 | ifeq ($(CONFIG_PPC_ISERIES),y) | 76 | ifeq ($(CONFIG_PPC_ISERIES),y) |
| 75 | $(obj)/head_64.o: $(obj)/lparmap.s | 77 | $(obj)/head_64.o: $(obj)/lparmap.s |
diff --git a/arch/powerpc/kernel/audit.c b/arch/powerpc/kernel/audit.c new file mode 100644 index 000000000000..caf085a19234 --- /dev/null +++ b/arch/powerpc/kernel/audit.c | |||
| @@ -0,0 +1,29 @@ | |||
| 1 | #include <linux/init.h> | ||
| 2 | #include <linux/types.h> | ||
| 3 | #include <linux/audit.h> | ||
| 4 | #include <asm/unistd.h> | ||
| 5 | |||
| 6 | static unsigned dir_class[] = { | ||
| 7 | #include <asm-generic/audit_dir_write.h> | ||
| 8 | ~0U | ||
| 9 | }; | ||
| 10 | |||
| 11 | static unsigned chattr_class[] = { | ||
| 12 | #include <asm-generic/audit_change_attr.h> | ||
| 13 | ~0U | ||
| 14 | }; | ||
| 15 | |||
| 16 | static int __init audit_classes_init(void) | ||
| 17 | { | ||
| 18 | #ifdef CONFIG_PPC64 | ||
| 19 | extern __u32 ppc32_dir_class[]; | ||
| 20 | extern __u32 ppc32_chattr_class[]; | ||
| 21 | audit_register_class(AUDIT_CLASS_DIR_WRITE_32, ppc32_dir_class); | ||
| 22 | audit_register_class(AUDIT_CLASS_CHATTR_32, ppc32_chattr_class); | ||
| 23 | #endif | ||
| 24 | audit_register_class(AUDIT_CLASS_DIR_WRITE, dir_class); | ||
| 25 | audit_register_class(AUDIT_CLASS_CHATTR, chattr_class); | ||
| 26 | return 0; | ||
| 27 | } | ||
| 28 | |||
| 29 | __initcall(audit_classes_init); | ||
diff --git a/arch/powerpc/kernel/compat_audit.c b/arch/powerpc/kernel/compat_audit.c new file mode 100644 index 000000000000..dbbb8b81f1d9 --- /dev/null +++ b/arch/powerpc/kernel/compat_audit.c | |||
| @@ -0,0 +1,12 @@ | |||
| 1 | #undef __powerpc64__ | ||
| 2 | #include <asm/unistd.h> | ||
| 3 | |||
| 4 | unsigned ppc32_dir_class[] = { | ||
| 5 | #include <asm-generic/audit_dir_write.h> | ||
| 6 | ~0U | ||
| 7 | }; | ||
| 8 | |||
| 9 | unsigned ppc32_chattr_class[] = { | ||
| 10 | #include <asm-generic/audit_change_attr.h> | ||
| 11 | ~0U | ||
| 12 | }; | ||
diff --git a/arch/s390/kernel/Makefile b/arch/s390/kernel/Makefile index 86601a945709..9a33ed6ca696 100644 --- a/arch/s390/kernel/Makefile +++ b/arch/s390/kernel/Makefile | |||
| @@ -16,9 +16,11 @@ extra-y += head.o init_task.o vmlinux.lds | |||
| 16 | obj-$(CONFIG_MODULES) += s390_ksyms.o module.o | 16 | obj-$(CONFIG_MODULES) += s390_ksyms.o module.o |
| 17 | obj-$(CONFIG_SMP) += smp.o | 17 | obj-$(CONFIG_SMP) += smp.o |
| 18 | 18 | ||
| 19 | obj-$(CONFIG_AUDIT) += audit.o | ||
| 20 | compat-obj-$(CONFIG_AUDIT) += compat_audit.o | ||
| 19 | obj-$(CONFIG_COMPAT) += compat_linux.o compat_signal.o \ | 21 | obj-$(CONFIG_COMPAT) += compat_linux.o compat_signal.o \ |
| 20 | compat_wrapper.o compat_exec_domain.o \ | 22 | compat_wrapper.o compat_exec_domain.o \ |
| 21 | binfmt_elf32.o | 23 | binfmt_elf32.o $(compat-obj-y) |
| 22 | 24 | ||
| 23 | obj-$(CONFIG_VIRT_TIMER) += vtime.o | 25 | obj-$(CONFIG_VIRT_TIMER) += vtime.o |
| 24 | obj-$(CONFIG_STACKTRACE) += stacktrace.o | 26 | obj-$(CONFIG_STACKTRACE) += stacktrace.o |
diff --git a/arch/s390/kernel/audit.c b/arch/s390/kernel/audit.c new file mode 100644 index 000000000000..c26cd6cb2319 --- /dev/null +++ b/arch/s390/kernel/audit.c | |||
| @@ -0,0 +1,29 @@ | |||
| 1 | #include <linux/init.h> | ||
| 2 | #include <linux/types.h> | ||
| 3 | #include <linux/audit.h> | ||
| 4 | #include <asm/unistd.h> | ||
| 5 | |||
| 6 | static unsigned dir_class[] = { | ||
| 7 | #include <asm-generic/audit_dir_write.h> | ||
| 8 | ~0U | ||
| 9 | }; | ||
| 10 | |||
| 11 | static unsigned chattr_class[] = { | ||
| 12 | #include <asm-generic/audit_change_attr.h> | ||
| 13 | ~0U | ||
| 14 | }; | ||
| 15 | |||
| 16 | static int __init audit_classes_init(void) | ||
| 17 | { | ||
| 18 | #ifdef CONFIG_COMPAT | ||
| 19 | extern __u32 s390_dir_class[]; | ||
| 20 | extern __u32 s390_chattr_class[]; | ||
| 21 | audit_register_class(AUDIT_CLASS_DIR_WRITE_32, s390_dir_class); | ||
| 22 | audit_register_class(AUDIT_CLASS_CHATTR_32, s390_chattr_class); | ||
| 23 | #endif | ||
| 24 | audit_register_class(AUDIT_CLASS_DIR_WRITE, dir_class); | ||
| 25 | audit_register_class(AUDIT_CLASS_CHATTR, chattr_class); | ||
| 26 | return 0; | ||
| 27 | } | ||
| 28 | |||
| 29 | __initcall(audit_classes_init); | ||
diff --git a/arch/s390/kernel/compat_audit.c b/arch/s390/kernel/compat_audit.c new file mode 100644 index 000000000000..1a7d34fecf67 --- /dev/null +++ b/arch/s390/kernel/compat_audit.c | |||
| @@ -0,0 +1,12 @@ | |||
| 1 | #undef __s390x__ | ||
| 2 | #include <asm/unistd.h> | ||
| 3 | |||
| 4 | unsigned s390_dir_class[] = { | ||
| 5 | #include <asm-generic/audit_dir_write.h> | ||
| 6 | ~0U | ||
| 7 | }; | ||
| 8 | |||
| 9 | unsigned s390_chattr_class[] = { | ||
| 10 | #include <asm-generic/audit_change_attr.h> | ||
| 11 | ~0U | ||
| 12 | }; | ||
