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

# This file lists out the seccomp policy for allowed syscalls on cups_proxy.
accept4: 1
bind: 1
brk: 1
chmod: 1
clock_getres: 1
clone: 1
close: 1
connect: 1
creat: 1
epoll_create1: 1
epoll_ctl: 1
epoll_wait: 1
exit: 1
exit_group: 1
fcntl: 1
fstat: 1
futex: 1
getegid: 1
geteuid: 1
getgid: 1
getpid: 1
getresgid: 1
getresuid: 1
getsockname: 1
gettid: 1
getuid: 1
listen: 1
lseek: 1
mmap: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE
mprotect: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE
munmap: 1
openat: 1
pipe2: 1
poll: 1
prctl: arg0 == PR_SET_NAME
prlimit64: 1
read: 1
recvfrom: 1
recvmsg: 1
restart_syscall: 1
rt_sigprocmask: 1
rt_sigreturn: 1
select: 1
sendmsg: 1
sendto: 1
set_robust_list: 1
setpriority: 1
setsockopt: 1
shutdown: 1
signalfd4: 1
socket: arg0 == AF_UNIX
stat: 1
unlink: 1
write: 1
