qemu: fix seccomp on arm

This commit is contained in:
Christian Neukirchen 2014-08-25 13:27:13 +02:00
parent 05cf70ac5c
commit a5f0adf384
2 changed files with 57 additions and 7 deletions

View File

@ -0,0 +1,56 @@
--- qemu-seccomp.c
+++ qemu-seccomp.c
@@ -25,15 +25,21 @@ static const struct QemuSeccompSyscall seccomp_whitelist[] = {
{ SCMP_SYS(timer_settime), 255 },
{ SCMP_SYS(timer_gettime), 254 },
{ SCMP_SYS(futex), 253 },
+#if !defined(__ARM_EABI__)
{ SCMP_SYS(select), 252 },
+ { SCMP_SYS(time), 245 },
+ { SCMP_SYS(alarm), 241 },
+ { SCMP_SYS(getrlimit), 245 },
+ { SCMP_SYS(mmap), 247 },
+ { SCMP_SYS(socketcall), 250 },
+ { SCMP_SYS(ipc), 245 },
+#endif
{ SCMP_SYS(recvfrom), 251 },
{ SCMP_SYS(sendto), 250 },
- { SCMP_SYS(socketcall), 250 },
{ SCMP_SYS(read), 249 },
{ SCMP_SYS(io_submit), 249 },
{ SCMP_SYS(brk), 248 },
{ SCMP_SYS(clone), 247 },
- { SCMP_SYS(mmap), 247 },
{ SCMP_SYS(mprotect), 246 },
{ SCMP_SYS(execve), 245 },
{ SCMP_SYS(open), 245 },
@@ -48,13 +54,11 @@ static const struct QemuSeccompSyscall seccomp_whitelist[] = {
{ SCMP_SYS(bind), 245 },
{ SCMP_SYS(listen), 245 },
{ SCMP_SYS(semget), 245 },
- { SCMP_SYS(ipc), 245 },
{ SCMP_SYS(gettimeofday), 245 },
{ SCMP_SYS(readlink), 245 },
{ SCMP_SYS(access), 245 },
{ SCMP_SYS(prctl), 245 },
{ SCMP_SYS(signalfd), 245 },
- { SCMP_SYS(getrlimit), 245 },
{ SCMP_SYS(set_tid_address), 245 },
{ SCMP_SYS(statfs), 245 },
{ SCMP_SYS(unlink), 245 },
@@ -93,7 +97,6 @@ static const struct QemuSeccompSyscall seccomp_whitelist[] = {
{ SCMP_SYS(times), 245 },
{ SCMP_SYS(exit), 245 },
{ SCMP_SYS(clock_gettime), 245 },
- { SCMP_SYS(time), 245 },
{ SCMP_SYS(restart_syscall), 245 },
{ SCMP_SYS(pwrite64), 245 },
{ SCMP_SYS(nanosleep), 245 },
@@ -182,7 +185,6 @@ static const struct QemuSeccompSyscall seccomp_whitelist[] = {
{ SCMP_SYS(lstat64), 241 },
{ SCMP_SYS(sendfile64), 241 },
{ SCMP_SYS(ugetrlimit), 241 },
- { SCMP_SYS(alarm), 241 },
{ SCMP_SYS(rt_sigsuspend), 241 },
{ SCMP_SYS(rt_sigqueueinfo), 241 },
{ SCMP_SYS(rt_tgsigqueueinfo), 241 },

View File

@ -1,7 +1,7 @@
# Template file for 'qemu'
pkgname=qemu
version=2.1.0
revision=2
revision=3
short_desc="Open Source Processor Emulator"
maintainer="Juan RP <xtraeme@gmail.com>"
homepage="http://qemu.org"
@ -28,13 +28,7 @@ do_configure() {
args+=" --cross-prefix=${XBPS_CROSS_TRIPLET}-"
export PKG_CONFIG=pkg-config
export LIBTOOL=libtool
export CFLAGS+=" -D_LINUX_XATTR_H"
fi
# seccomp only supported on x86
case "$XBPS_TARGET_MACHINE" in
i686*|x86_64*) args+=" --enable-seccomp";;
*) args+=" --disable-seccomp";;
esac
./configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/libexec \
--enable-kvm --audio-drv-list=alsa,sdl,pa --disable-xen --enable-tpm \
--enable-vhost-net --enable-vnc-png --enable-vnc-tls --enable-virtfs \