1 /* Copyright 2016 The ChromiumOS Authors 2 * Use of this source code is governed by a BSD-style license that can be 3 * found in the LICENSE file. 4 */ 5 6 #include "syscall_wrapper.h" 7 8 #define _GNU_SOURCE 9 #include <sys/syscall.h> 10 #include <unistd.h> 11 12 /* 13 * Older glibc builds predate seccomp inclusion. These arches are the ones 14 * AOSP needs and doesn't provide anything newer. All other targets can upgrade 15 * their kernel headers. 16 */ 17 #ifndef SYS_seccomp 18 #if defined(__x86_64__) 19 #define SYS_seccomp 317 20 #elif defined(__i386__) 21 #define SYS_seccomp 354 22 #elif defined(__aarch64__) 23 #define SYS_seccomp 277 24 #elif defined(__arm__) 25 #define SYS_seccomp 383 26 #else 27 #error "Update your kernel headers" 28 #endif 29 #endif 30 sys_seccomp(unsigned int operation,unsigned int flags,void * args)31int sys_seccomp(unsigned int operation, unsigned int flags, void *args) 32 { 33 return syscall(SYS_seccomp, operation, flags, args); 34 } 35