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

getpid: 1
writev: 1
sendto: 1
write: 1
read: 1
pread64: 1
poll: 1
lstat: 1
futex: 1
fstat: 1
close: 1
openat: 1
getrandom: 1
readlinkat: 1
access: 1
faccessat: 1
faccessat2: 1
mmap: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE
recvmsg: 1
fcntl: 1
getdents: 1
readlink: 1
mprotect: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE
stat: 1
statx: 1
fstatfs: 1
brk: 1
prctl: arg0 == PR_SET_NO_NEW_PRIVS || arg0 == PR_SET_SECCOMP || \
       arg0 == PR_CAPBSET_DROP || arg0 == PR_SET_NAME
socket: arg0 == AF_NETLINK || arg0 == AF_UNIX || arg0 == AF_QIPCRTR || \
        arg0 == AF_INET || arg0 == AF_INET6
# 0x800248a0: IOCTL_WDM_MAX_COMMAND
# 0x8BE1: QMI_GET_SERVICE_FILE_IOCTL
# 0x8BE2 == QMI_GET_VIDPID_IOCTL
# 0x8BE3 == QMI_GET_MEID_IOCTL
# 0x8BE4 == SIOCIWFIRSTPRIV_CLEANUP
ioctl: arg1 == TCGETS || arg1 == SIOCGIFINDEX || arg1 == TIOCEXCL || \
       arg1 == TIOCNXCL || arg1 == TIOCGSERIAL || arg1 == 0x800248a0 || \
       arg1 == 0x8BE1 || arg1 == 0x8BE2 || arg1 == 0x8BE3 || arg1 == 0x8BE4 || \
       arg1 == TCFLSH || arg1 == TCSETS
connect: 1
clone: 1
set_robust_list: 1
rt_sigaction: 1
gettid: 1
sched_setattr: 1
dup2: 1
rt_sigprocmask: 1
eventfd2: 1
munmap: 1
setsockopt: 1
pipe2: 1
getdents64: 1
sched_getattr: 1
bind: 1
getsockname: 1
wait4: 1
lseek: 1
geteuid: 1
getegid: 1
getuid: 1
sendmsg: 1
recvfrom: 1
arch_prctl: 1
madvise:1
set_tid_address: 1
prlimit64: 1
getsockopt: 1
listen: 1
accept: 1
getpeername: 1
exit_group: 1
setpgid: 1
execve: 1
restart_syscall: 1
exit: 1
rt_sigreturn: 1
nanosleep: 1
clock_nanosleep: 1
clock_gettime: 1
gettimeofday: 1
newfstatat: 1
tgkill: 1
