# Copyright 2014 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
gettid: 1
getuid: 1
geteuid: 1
getgid: 1
getegid: 1
getresuid: 1
getresgid: 1

clock_getres: 1
clock_gettime: 1
gettimeofday: 1
time: 1

epoll_create: 1
epoll_create1: 1
epoll_wait: 1
epoll_pwait: 1
epoll_ctl: 1
poll: 1

openat: 1
read: 1
write: 1
writev: 1
open: 1
close: 1
creat: 1
fstat: 1
newfstatat: 1
stat: 1
lseek: 1
fcntl: 1
readlink: 1
readlinkat: 1
faccessat: 1
faccessat2: 1
pipe2: 1
socket: arg0 == AF_UNIX
connect: 1
sendto: 1
getsockname: 1
sendmsg: 1
recvmsg: 1

futex: 1

restart_syscall: 1
exit: 1
exit_group: 1
rt_sigaction: 1
rt_sigreturn: 1
sigaltstack: 1
personality: 1

brk: 1
# Don't allow mmap with both PROT_WRITE and PROT_EXEC.
mmap: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE
munmap: 1
madvise: 1
mlock: 1
munlock: 1

# Allow thread creation.
# Don't allow mprotect with PROT_EXEC.
mprotect: arg2 in ~PROT_EXEC
clone: 1
set_robust_list: 1
set_thread_area: 1
set_tid_address: 1
tgkill: 1
sched_yield: 1
sysinfo: 1
getrandom: 1

rt_sigprocmask: 1
signalfd4: 1
getpriority: 1
setpriority: 1
chdir: 1
nanosleep: 1
clock_nanosleep: 1

# These are attempted but apparently not necessary; return EPERM.
ioctl: return 1
prctl: return 1

# Allow metrics sending.
flock: 1

access: 1
sched_getattr: 1
sched_setattr: 1
