1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 /* 3 * include/asm-generic/seccomp.h 4 * 5 * Copyright (C) 2014 Linaro Limited 6 * Author: AKASHI Takahiro <takahiro.akashi@linaro.org> 7 */ 8 #ifndef _ASM_GENERIC_SECCOMP_H 9 #define _ASM_GENERIC_SECCOMP_H 10 11 #include <linux/unistd.h> 12 13 #if defined(CONFIG_COMPAT) && !defined(__NR_seccomp_read_32) 14 #define __NR_seccomp_read_32 __NR_read 15 #define __NR_seccomp_write_32 __NR_write 16 #define __NR_seccomp_exit_32 __NR_exit 17 #ifndef __NR_seccomp_sigreturn_32 18 #define __NR_seccomp_sigreturn_32 __NR_rt_sigreturn 19 #endif 20 #endif /* CONFIG_COMPAT && ! already defined */ 21 22 #define __NR_seccomp_read __NR_read 23 #define __NR_seccomp_write __NR_write 24 #define __NR_seccomp_exit __NR_exit 25 #ifndef __NR_seccomp_sigreturn 26 #define __NR_seccomp_sigreturn __NR_rt_sigreturn 27 #endif 28 29 #ifdef CONFIG_COMPAT 30 #ifndef get_compat_mode1_syscalls 31 static inline const int *get_compat_mode1_syscalls(void) 32 { 33 static const int mode1_syscalls_32[] = { 34 __NR_seccomp_read_32, __NR_seccomp_write_32, 35 __NR_seccomp_exit_32, __NR_seccomp_sigreturn_32, 36 -1, /* negative terminated */ 37 }; 38 return mode1_syscalls_32; 39 } 40 #endif 41 #endif /* CONFIG_COMPAT */ 42 43 #endif /* _ASM_GENERIC_SECCOMP_H */ 44