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

mmap2: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE
openat: 1
mprotect: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE
fstat64: 1
stat64: 1
close: 1
read: 1
brk: 1
rt_sigaction: 1
gettimeofday: 1
write: 1
uname: 1
access: 1
ARM_set_tls: 1
munmap: 1
set_tid_address: 1
set_robust_list: 1
rt_sigprocmask: 1
ugetrlimit: 1
ioctl: arg1 == TCGETS || arg1 == SIOCGIFFLAGS || arg1 == SIOCSIFFLAGS || arg1 == FIONREAD || arg1 == TIOCGWINSZ || arg1 == FIONBIO
_llseek: 1
getpid: 1
socket: arg0 == AF_UNIX || arg0 == AF_INET || arg0 == AF_INET6 || arg0 == AF_NETLINK
connect: 1
send: 1
exit_group: 1
restart_syscall: 1
exit: 1
rt_sigreturn: 1
futex: 1
getuid : 1
getgid : 1
getegid : 1
dup2: 1
fcntl: 1
gettid: 1
signalfd4: 1
epoll_wait: 1
clock_gettime: 1
epoll_create1: 1
pipe2: 1
epoll_ctl: 1
geteuid: 1
listen: 1
bind: 1
accept: 1
recvfrom: 1
sendto: 1
getsockopt: arg1 == SOL_SOCKET
socketpair: 1
poll: 1
setsockopt: 1
sendmmsg: 1
getpeername: 1
getsockname: 1
clone: 1
setpriority: 1
prctl: arg0 == PR_SET_NAME
madvise: 1
creat: 1
rmdir: 1
unlink: 1
lstat: 1
getrandom: 1
getdents: 1
recvmsg: 1
writev: 1
getuid32: 1
geteuid32: 1
getgid32: 1
getegid32: 1
getresuid32: 1
getresgid32: 1
fcntl64: 1
setitimer: 1
recv: 1
pipe: 1
lstat64: 1
shutdown: 1
