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

# These seccomp rules specify only the syscalls used by the etphidiap firmware
# updater tool when updating the firmware.

# rseq should be first due to frequency and purpose to decrease nptl latency
rseq: 1

write: 1
read: 1
nanosleep: 1
clock_nanosleep: 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
close: 1
# ioctl: arg1 == I2C_SLAVE || arg1 == I2C_SLAVE_FORCE
ioctl: arg1 == 0x703 || arg1 == 0x706
brk: 1
access: 1
lseek: 1
arch_prctl: 1
munmap: 1
exit_group: 1
restart_syscall: 1
exit: 1
rt_sigreturn: 1
fstatfs: 1
gettid: 1
