blob: 29cf14a413a32a80209218d1e475e62f6257f7ee [file] [log] [blame]
# Copyright 2017 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.
write: 1
select: 1
read: 1
close: 1
getpeername: 1
getsockname: 1
accept: 1
clone: 1
exit_group: 1
# We only want to allow AF_INET, AF_INET6, AF_UNIX, and SOCK_STREAM.
socket: arg0 == AF_INET6 && arg1 == SOCK_STREAM && arg2 == 0 || arg0 == AF_INET && arg1 == SOCK_STREAM && arg2 == 0 || arg0 == AF_UNIX && arg1 & 0xfffffff2 && arg2 == 0
connect: 1
open: 1
openat: 1
stat: 1
mmap: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE
fstat: 1
newfstatat: 1
mprotect: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE
rt_sigaction: 1
brk: 1
munmap: 1
setsockopt: 1
restart_syscall: 1
exit: 1
rt_sigreturn: 1
setgid: 1
setuid: 1
access: 1
arch_prctl: 1
getpid: 1
listen: 1
setgroups: 1
execve: 1
wait4: 1
bind: 1
uname: 1
# Allow SIOCGIFNAME.
ioctl: arg1 == SIOCGIFNAME
# When we catch a SIGTERM, we kill children with SIGTERM too.
kill: 1
lseek: 1
fstatfs: 1