mirror of
https://chromium.googlesource.com/crosvm/crosvm
synced 2024-11-28 17:44:10 +00:00
4441c01124
The build-time seccomp compiler for aarch64 complains that it doesn't recognize open, epoll_wait, recv, mmap2, dup2, poll, mkdir, or stat. I tried to propose a change to upstream minijail to make it aware of these syscalls, but the calls are in various forms of deprecation so upstream is doubting the sanity of the policy files. I applied the following mapping: open->openat, epoll_wait->epoll_pwait, recv->recvfrom, mmap2->mmap, dup2->dup3, poll->ppoll, mkdir->mkdirat, and stat->statx. In many cases the new syscall was already present so I just deleted the old one. BUG=None TEST=Ran compile_seccomp_policy.py with an unmodified minijail until it stopped complaining. I don't have an arm device for runtime testing. Wrote an app to emulate the execution of the first 400 syscall #s though the bpf filter and verified that the list that matches the filter is the same as the policy file. Change-Id: I599aa549a1712b898eb6b73492872a9676e7215d Signed-off-by: Matt Delco <delco@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/2036218 Tested-by: kokoro <noreply+kokoro@google.com> Reviewed-by: Stephen Barber <smbarber@chromium.org>
26 lines
501 B
Text
26 lines
501 B
Text
# 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.
|
|
|
|
openat: 1
|
|
|
|
@include /usr/share/policy/crosvm/common_device.policy
|
|
|
|
pread64: 1
|
|
pwrite64: 1
|
|
statx: 1
|
|
fstat: 1
|
|
ioctl: arg1 == FIOCLEX
|
|
getdents64: 1
|
|
fdatasync: 1
|
|
fsync: 1
|
|
mkdirat: 1
|
|
renameat: 1
|
|
linkat: 1
|
|
unlinkat: 1
|
|
socket: arg0 == AF_UNIX
|
|
utimensat: 1
|
|
ftruncate: 1
|
|
fchown: arg1 == 0xffffffff && arg2 == 0xffffffff
|
|
statfs: 1
|
|
newfstatat: 1
|