diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2006-09-12 02:59:45 -0400 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2006-09-12 03:05:05 -0400 |
commit | f6bc0c1c5b0fe393efaf922e01887c33b35f2910 (patch) | |
tree | ba6985fae2eca0397c872d3ab015c1c403678213 /arch/sparc64/kernel/compat_audit.c | |
parent | e65e1fc2d24b09c496af76e9c5253ac30b300a89 (diff) |
[PATCH] sparc64 audit syscall classes hookup
... that should do it for all targets; the only remaining issues are
mips (currently treated as non-biarch) and handling of other OS
emulations (OSF/SunOS/Solaris/???). The latter would need to be
assigned new AUDIT_ARCH_... ABI numbers anyway...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'arch/sparc64/kernel/compat_audit.c')
-rw-r--r-- | arch/sparc64/kernel/compat_audit.c | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/arch/sparc64/kernel/compat_audit.c b/arch/sparc64/kernel/compat_audit.c new file mode 100644 index 00000000000..cca96c91b78 --- /dev/null +++ b/arch/sparc64/kernel/compat_audit.c @@ -0,0 +1,37 @@ +#include <asm-sparc/unistd.h> + +unsigned sparc32_dir_class[] = { +#include <asm-generic/audit_dir_write.h> +~0U +}; + +unsigned sparc32_chattr_class[] = { +#include <asm-generic/audit_change_attr.h> +~0U +}; + +unsigned sparc32_write_class[] = { +#include <asm-generic/audit_write.h> +~0U +}; + +unsigned sparc32_read_class[] = { +#include <asm-generic/audit_read.h> +~0U +}; + +int sparc32_classify_syscall(unsigned syscall) +{ + switch(syscall) { + case __NR_open: + return 2; + case __NR_openat: + return 3; + case __NR_socketcall: + return 4; + case __NR_execve: + return 5; + default: + return 1; + } +} |