# HG changeset patch # User Roy Marples # Date 1600629760 -3600 # Node ID f9a05c95d611a3bc20773e7e52af2b396483c513 # Parent a2d2d095088f932ca1a2a02f43a05cbf5a5fad1c privsep: Add more platforms for seccomp Really nutty. Why cannot a system header define a default? diff -r a2d2d095088f -r f9a05c95d611 src/privsep-linux.c --- a/src/privsep-linux.c Sun Sep 20 19:44:23 2020 +0100 +++ b/src/privsep-linux.c Sun Sep 20 20:22:40 2020 +0100 @@ -127,6 +127,8 @@ #define SECCOMP_FILTER_FAIL SECCOMP_RET_KILL +/* I personally find this quite nutty. + * Why can a system header not define a default for this? */ #if defined(__i386__) # define SECCOMP_AUDIT_ARCH AUDIT_ARCH_I386 #elif defined(__x86_64__) @@ -135,9 +137,23 @@ # ifndef EM_ARM # define EM_ARM 40 # endif -# define SECCOMP_AUDIT_ARCH AUDIT_ARCH_ARM +# if (BYTE_ORDER == LITTLE_ENDIAN) +# define SECCOMP_AUDIT_ARCH AUDIT_ARCH_ARM +# else +# define SECCOMP_AUDIT_ARCH AUDIT_ARCH_ARMEB +# endif #elif defined(__aarch64__) # define SECCOMP_AUDIT_ARCH AUDIT_ARCH_AARCH64 +#elif defined(__alpha__) +# define SECCOMP_AUDIT_ARCH AUDIT_ARCH_ALPHA +#elif defined(__hppa__) +# if defined(__LP64__) +# define SECCOMP_AUDIT_ARCH AUDIT_ARCH_PARISC64 +# else +# define SECCOMP_AUDIT_ARCH AUDIT_ARCH_PARISC +# endif +#elif defined(__ia64__) +# define SECCOMP_AUDIT_ARCH AUDIT_ARCH_IA64 #elif defined(__mips__) # if defined(__MIPSEL__) # if defined(__LP64__) @@ -154,6 +170,12 @@ # define SECCOMP_AUDIT_ARCH AUDIT_ARCH_PPC64 #elif defined(__powerpc__) # define SECCOMP_AUDIT_ARCH AUDIT_ARCH_PPC +#elif defined(__riscv) +# if defined(__LP64__) +# define SECCOMP_AUDIT_ARCH AUDIT_ARCH_RISCV64 +# else +# define SECCOMP_AUDIT_ARCH AUDIT_ARCH_RISCV32 +# endif #elif defined(__s390x__) # define SECCOMP_AUDIT_ARCH AUDIT_ARCH_S390X #elif defined(__s390__)