# Copyright 2018 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.

accept: 1
access: 1
bind: 1
brk: 1
close: 1
dup2: 1
exit: 1
exit_group: 1
flock: 1
fstat64: 1
getpeername: 1
getpid: 1
getsockname: 1
getsockopt: 1
gettimeofday: 1
# ioctl: arg1 == SIOCGIFINDEX
ioctl: arg1 == 0x8933
listen: 1
# Don't allow mmap with both PROT_WRITE and PROT_EXEC
mmap2: arg2 in 0xfffffffb || arg2 in 0xfffffffd
mprotect: arg2 in 0xfffffffb || arg2 in 0xfffffffd
munmap: 1
open: 1
openat: 1
poll: 1
prlimit64: arg2 == 0 && arg3 != 0
read: 1
recvmsg: 1
restart_syscall: 1
rt_sigaction: 1
rt_sigprocmask: 1
rt_sigreturn: 1
send: 1
sendmsg: 1
sendto: 1
set_robust_list: 1
setsockopt: 1
set_tid_address: 1
socket: arg0 == AF_INET6 || arg0 == AF_UNIX || arg0 == AF_INET || arg0 == AF_NETLINK
stat64: 1
ugetrlimit: 1
umask: 1
uname: 1
unlink: 1
write: 1
