# Copyright 2018 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 is used by CrosDisks to specify the seccomp filter policy for
# sandboxing AVFS processes on ARM64 platforms.
#
exit: 1
read: 1
write: 1
openat: 1
close: 1
unlinkat: 1
execve: 1
chdir: 1
mount: 1
faccessat: 1
mkdirat: 1
brk: 1
# Allow ioctl(cmd==TCGETS) for isatty check in unrar code.
ioctl: arg1 == TCGETS
umask: 1
dup: 1
dup3: 1
setsid: 1
gettid: 1
gettimeofday: 1
munmap: 1
wait4: 1
clone: 1
uname: 1
mprotect: 1
fchdir: 1
lseek: 1
writev: 1
ppoll: 1
rt_sigaction: 1
rt_sigprocmask: 1
rt_sigreturn: 1
mmap: 1
fstat: 1
getuid: 1
getgid: 1
geteuid: 1
setgroups: 1
setresuid: 1
setresgid: 1
setfsuid: 1
setfsgid: 1
getdents64: 1
madvise: 1
fcntl: 1
futex: 1
exit_group: 1
set_tid_address: 1
statfs: 1
tgkill: 1
socketpair: 1
sendmsg: 1
recvmsg: 1
set_robust_list: 1
pipe2: 1
getpid: 1
prlimit64: arg2 == 0 && arg3 != 0
prctl: arg0 == PR_SET_NAME
kill: arg1 == SIGTERM
restart_syscall: 1
clock_gettime: 1
newfstatat: 1
