# Copyright 2016 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

access: 1
alarm: 1
arch_prctl: 1
bind: 1
brk: 1
chdir: 1
clock_gettime: 1
clone: 1
close: 1
connect: 1
dup: 1
epoll_create: 1
epoll_ctl: 1
epoll_wait: 1
execve: 1
exit: 1
exit_group: 1
fallocate: 1
fchmod: 1
fcntl: 1
fdatasync: 1
fstat: 1
fsync: 1
ftruncate: 1
futex: 1
getcwd: 1
getdents: 1
getdents64: 1
getegid: 1
geteuid: 1
getpeername: 1
getpid: 1
getrandom: 1
getrlimit: 1
getsockname: 1
getsockopt: 1
gettimeofday: 1
getuid: 1
# ioctl: arg1 == TCGETS || arg1 == TCSETS || arg1 == TCSETSF ||
#        arg1 == FIONREAD || arg1 == FIONBIO ||
#        arg1 == SIOCGIFINDEX || arg1 == SIOCETHTOOL
ioctl: arg1 == 0x5401 || arg1 == 0x5402 || arg1 == 0x5404 || arg1 == 0x541b || arg1 == 0x5421 || arg1 == 0x8933 || arg1 == 0x8946
lseek: 1
lstat: 1
kill: 1
mkdir: 1
# Make sure PROT_WRITE (bit 1) and PROT_EXEC (bit 2) are not both set.
mmap: arg2 in 0xfffffffb || arg2 in 0xfffffffd
mprotect: arg2 in 0xfffffffb || arg2 in 0xfffffffd
msync: 1
munmap: 1
openat: 1
open: 1
pipe: 1
poll: 1
pread64: 1
preadv: 1
prlimit64: arg2 == 0 && arg3 != 0
pwrite64: 1
pwritev: 1
read: 1
readv: 1
recvfrom: 1
recvmsg: 1
rename: 1
restart_syscall: 1
rt_sigaction: 1
rt_sigprocmask: 1
rt_sigreturn: 1
rt_sigsuspend: 1
select: 1
sendmmsg: 1
sendmsg: 1
sendto: 1
setsockopt: 1
set_robust_list: 1
set_tid_address: 1
shutdown: 1
# socket: arg0 == PF_INET || arg0 == PF_LOCAL || arg0 == PF_INET6 || arg0 == PF_NETLINK
socket: arg0 == 2 || arg0 == 1 || arg0 == 10 || arg0 == 16
stat: 1
sysinfo: 1
umask: 1
uname: 1
unlink: 1
utime: 1
wait4: 1
write: 1
writev: 1
