# Copyright (c) 2012 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.
read: 1
ioctl: 1
write: 1
timerfd_settime: 1
timerfd_settime64: 1
# Don't allow mmap2 with both PROT_WRITE and PROT_EXEC.
mmap2: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE
mremap: 1
close: 1
open: 1
poll: 1
clock_gettime: 1
clock_gettime64: 1
munmap: 1
# Don't allow mprotect with PROT_EXEC.
mprotect: arg2 in ~PROT_EXEC
lseek: 1
getdents: 1
fcntl64: 1
sendmsg: 1
recvmsg: 1
futex: 1
futex_time64: 1
timerfd_create: 1
brk: 1
rt_sigaction: 1
send: 1
openat: 1
faccessat: 1
faccessat2: 1
gettid: 1
gettimeofday: 1
sched_get_priority_max: 1
sched_getattr: 1
sched_setattr: 1
getsockname: 1
clock_getres: 1
clock_getres_time64: 1
sched_get_priority_min: 1
connect: 1
sched_getparam: 1
rt_sigprocmask: 1
access: 1
_llseek: 1
set_tid_address: 1
clone: 1
sched_getscheduler: 1
set_robust_list: 1
sigreturn: 1
setsockopt: 1
# Allow socket(domain==PF_LOCAL) or socket(domain==PF_NETLINK)
socket: arg0 == 0x1 || arg0 == 0x10
getuid32: 1
getgid32: 1
geteuid32: 1
getegid32: 1
restart_syscall: 1
exit: 1
exit_group: 1
rt_sigreturn: 1
bind: 1
pipe: 1
pipe2: 1
stat64: 1
fstat64: 1
fstatat64: 1
statx: 1
fstatfs: 1
madvise: 1
uname: 1
setsid: 1
chdir: 1
dup: 1
dup2: 1
dup3: 1
unlink: 1
tgkill: 1
getresgid32: 1
getresuid32: 1
signalfd4: 1
ARM_set_tls: 1
# Allow PR_SET_NAME from libchrome's base::PlatformThread::SetName()
prctl: arg0 == 0xf
setpriority: 1
getrandom: 1
nanosleep: 1
clock_nanosleep: 1
clock_nanosleep_time64: 1
epoll_create1: 1
epoll_ctl: 1
epoll_wait: 1
getpid: 1
readlink: 1
readlinkat: 1
lstat64: 1
getdents64: 1
fstatfs64: 1
