From 00ea1595e937b18726c9fdbc43314ed7cb86fbe1 Mon Sep 17 00:00:00 2001 From: Leonid Pliushch Date: Sun, 22 Aug 2021 18:35:22 +0300 Subject: [PATCH] qemu: prevent possible crash when using security_model=mapped-file When security_model=mapped-file is being used for VirtFS when accessing shared storage or other file system that doesn't support chmod, an assertion error may occur. --- .../0015-9pfs-dont-chmod-mapfile.patch | 12 ++++++++++++ x11-packages/qemu-system-x86-64/build.sh | 2 +- 2 files changed, 13 insertions(+), 1 deletion(-) create mode 100644 x11-packages/qemu-system-x86-64/0015-9pfs-dont-chmod-mapfile.patch diff --git a/x11-packages/qemu-system-x86-64/0015-9pfs-dont-chmod-mapfile.patch b/x11-packages/qemu-system-x86-64/0015-9pfs-dont-chmod-mapfile.patch new file mode 100644 index 000000000..a35070743 --- /dev/null +++ b/x11-packages/qemu-system-x86-64/0015-9pfs-dont-chmod-mapfile.patch @@ -0,0 +1,12 @@ +diff -uNr qemu-5.2.0/hw/9pfs/9p-local.c qemu-5.2.0.mod/hw/9pfs/9p-local.c +--- qemu-5.2.0/hw/9pfs/9p-local.c 2020-12-08 18:59:44.000000000 +0200 ++++ qemu-5.2.0.mod/hw/9pfs/9p-local.c 2021-08-07 17:01:43.567841976 +0300 +@@ -299,8 +299,6 @@ + + map_fd = fileno(fp); + assert(map_fd != -1); +- ret = fchmod(map_fd, 0600); +- assert(ret == 0); + + if (credp->fc_uid != -1) { + uid = credp->fc_uid; diff --git a/x11-packages/qemu-system-x86-64/build.sh b/x11-packages/qemu-system-x86-64/build.sh index 9da291cbb..16dc4b5f9 100644 --- a/x11-packages/qemu-system-x86-64/build.sh +++ b/x11-packages/qemu-system-x86-64/build.sh @@ -3,7 +3,7 @@ TERMUX_PKG_DESCRIPTION="A generic and open source machine emulator and virtualiz TERMUX_PKG_LICENSE="LGPL-2.1" TERMUX_PKG_MAINTAINER="Leonid Pliushch " TERMUX_PKG_VERSION=1:5.2.0 -TERMUX_PKG_REVISION=9 +TERMUX_PKG_REVISION=10 TERMUX_PKG_SRCURL=https://download.qemu.org/qemu-${TERMUX_PKG_VERSION:2}.tar.xz TERMUX_PKG_SHA256="cb18d889b628fbe637672b0326789d9b0e3b8027e0445b936537c78549df17bc" TERMUX_PKG_DEPENDS="attr, glib, libbz2, libc++, libcap-ng, libcurl, libgcrypt, libiconv, libjpeg-turbo, liblzo, libnfs, libpixman, libpng, libssh, libx11, ncurses, qemu-common, resolv-conf, sdl2, sdl2-image, zlib, libspice-server, libusbredir"