From 1515087e7f42b0dce0c0bb5946c81fc5e6acf347 Mon Sep 17 00:00:00 2001 From: Sérgio M. Basto Date: Aug 11 2021 10:41:12 +0000 Subject: Update Virtualbox Guest Additions to 6.1.26 (#1984089) --- diff --git a/.gitignore b/.gitignore index f094cc1..8846f10 100644 --- a/.gitignore +++ b/.gitignore @@ -27,3 +27,4 @@ /VirtualBox-6.1.18.tar.bz2 /VirtualBox-6.1.20.tar.bz2 /VirtualBox-6.1.22.tar.bz2 +/VirtualBox-6.1.26.tar.bz2 diff --git a/0001-VBoxServiceAutoMount-Change-Linux-mount-code-to-use-.patch b/0001-VBoxServiceAutoMount-Change-Linux-mount-code-to-use-.patch deleted file mode 100644 index 6a15a33..0000000 --- a/0001-VBoxServiceAutoMount-Change-Linux-mount-code-to-use-.patch +++ /dev/null @@ -1,189 +0,0 @@ -From 369dd2ee3c82c4417fee04aeec933c74fd198e78 Mon Sep 17 00:00:00 2001 -From: Hans de Goede -Date: Tue, 23 Jan 2018 15:09:20 +0100 -Subject: [PATCH resend] VBoxServiceAutoMount: Change Linux mount code to use - an options string - -Signed-off-by: Hans de Goede ---- - .../common/VBoxService/VBoxServiceAutoMount.cpp | 62 +++------------------- - 1 file changed, 8 insertions(+), 54 deletions(-) - -diff --git a/src/VBox/Additions/common/VBoxService/VBoxServiceAutoMount.cpp b/src/VBox/Additions/common/VBoxService/VBoxServiceAutoMount.cpp ---- ./src/VBox/Additions/common/VBoxService/VBoxServiceAutoMount.cpp.orig 2019-04-16 11:09:11.000000000 +0100 -+++ ./src/VBox/Additions/common/VBoxService/VBoxServiceAutoMount.cpp 2019-04-26 17:10:47.178485356 +0100 -@@ -40,6 +40,7 @@ - #include - #include - #include -+#include - #include - #include - #include -@@ -114,6 +115,9 @@ RT_C_DECLS_END - # define VBOXSERVICE_AUTOMOUNT_MIQF SHFL_MIQF_PATH - #endif - -+#ifndef MAX_MNTOPT_STR -+#define MAX_MNTOPT_STR PAGE_SIZE -+#endif - - /********************************************************************************************************************************* - * Structures and Typedefs * -@@ -400,13 +399,13 @@ static int vbsvcAutoMountSharedFolderOld - int rc = vbsvcAutoMountPrepareMountPointOld(pszMountPoint, pszShareName, &Opts); - if (RT_SUCCESS(rc)) - { -+ char szOptBuf[MAX_MNTOPT_STR] = { '\0', }; -+ RTStrPrintf(szOptBuf, sizeof(szOptBuf), "uid=%d,gid=%d,dmode=%0o,fmode=%0o,dmask=%0o,fmask=%0o", -+ Opts.uid, Opts.gid, Opts.dmode, Opts.fmode, Opts.dmask, Opts.fmask); - # ifdef RT_OS_SOLARIS - int fFlags = 0; - if (Opts.ronly) - fFlags |= MS_RDONLY; -- char szOptBuf[MAX_MNTOPT_STR] = { '\0', }; -- RTStrPrintf(szOptBuf, sizeof(szOptBuf), "uid=%d,gid=%d,dmode=%0o,fmode=%0o,dmask=%0o,fmask=%0o", -- Opts.uid, Opts.gid, Opts.dmode, Opts.fmode, Opts.dmask, Opts.fmask); - int r = mount(pszShareName, - pszMountPoint, - fFlags | MS_OPTIONSTR, -@@ -423,35 +422,11 @@ static int vbsvcAutoMountSharedFolderOld - - # else /* RT_OS_LINUX */ - unsigned long fFlags = MS_NODEV; -- -- /*const char *szOptions = { "rw" }; - ??? */ -- struct vbsf_mount_info_new mntinf; -- RT_ZERO(mntinf); -- -- mntinf.nullchar = '\0'; -- mntinf.signature[0] = VBSF_MOUNT_SIGNATURE_BYTE_0; -- mntinf.signature[1] = VBSF_MOUNT_SIGNATURE_BYTE_1; -- mntinf.signature[2] = VBSF_MOUNT_SIGNATURE_BYTE_2; -- mntinf.length = sizeof(mntinf); -- -- mntinf.uid = Opts.uid; -- mntinf.gid = Opts.gid; -- mntinf.ttl = Opts.ttl; -- mntinf.dmode = Opts.dmode; -- mntinf.fmode = Opts.fmode; -- mntinf.dmask = Opts.dmask; -- mntinf.fmask = Opts.fmask; -- mntinf.cMaxIoPages = Opts.cMaxIoPages; -- mntinf.szTag[0] = '\0'; -- -- strcpy(mntinf.name, pszShareName); -- strcpy(mntinf.nls_name, "\0"); -- - int r = mount(pszShareName, - pszMountPoint, - "vboxsf", - fFlags, -- &mntinf); -+ szOptBuf); - if (r == 0) - { - VGSvcVerbose(0, "vbsvcAutoMountWorker: Shared folder '%s' was mounted to '%s'\n", pszShareName, pszMountPoint); -@@ -484,34 +459,6 @@ static int vbsvcAutoMountSharedFolderOld - } - else /* r == -1, we got some error in errno. */ - { -- if (errno == EPROTO) -- { -- VGSvcVerbose(3, "vbsvcAutoMountWorker: Messed up share name, re-trying ...\n"); -- -- /** @todo r=bird: What on earth is going on here????? Why can't you -- * strcpy(mntinf.name, pszShareName) to fix it again? */ -- -- /* Sometimes the mount utility messes up the share name. Try to -- * un-mangle it again. */ -- char szCWD[RTPATH_MAX]; -- size_t cchCWD; -- if (!getcwd(szCWD, sizeof(szCWD))) -- { -- VGSvcError("vbsvcAutoMountWorker: Failed to get the current working directory\n"); -- szCWD[0] = '\0'; -- } -- cchCWD = strlen(szCWD); -- if (!strncmp(pszMountPoint, szCWD, cchCWD)) -- { -- while (pszMountPoint[cchCWD] == '/') -- ++cchCWD; -- /* We checked before that we have enough space */ -- strcpy(mntinf.name, pszMountPoint + cchCWD); -- } -- r = mount(mntinf.name, pszMountPoint, "vboxsf", fFlags, &mntinf); -- } -- if (r == -1) /* Was there some error from one of the tries above? */ -- { - switch (errno) - { - /* If we get EINVAL here, the system already has mounted the Shared Folder to another -@@ -530,7 +477,6 @@ static int vbsvcAutoMountSharedFolderOld - rc = RTErrConvertFromErrno(errno); - break; - } -- } - } - # endif - } -@@ -1464,51 +1410,21 @@ static int vbsvcAutomounterMountIt(PVBSV - } - - # if defined(RT_OS_LINUX) -- /* -- * Linux a bit more work... -- */ -- struct vbsf_mount_info_new MntInfo; -- RT_ZERO(MntInfo); -- struct vbsf_mount_opts MntOpts; -- RT_ZERO(MntOpts); -- MntInfo.nullchar = '\0'; -- MntInfo.signature[0] = VBSF_MOUNT_SIGNATURE_BYTE_0; -- MntInfo.signature[1] = VBSF_MOUNT_SIGNATURE_BYTE_1; -- MntInfo.signature[2] = VBSF_MOUNT_SIGNATURE_BYTE_2; -- MntInfo.length = sizeof(MntInfo); -- MntInfo.ttl = MntOpts.ttl = -1 /*default*/; -- MntInfo.msDirCacheTTL= MntOpts.msDirCacheTTL = -1 /*default*/; -- MntInfo.msInodeTTL = MntOpts.msInodeTTL = -1 /*default*/; -- MntInfo.cMaxIoPages = MntOpts.cMaxIoPages = 0 /*default*/; -- MntInfo.cbDirBuf = MntOpts.cbDirBuf = 0 /*default*/; -- MntInfo.enmCacheMode = MntOpts.enmCacheMode = kVbsfCacheMode_Default; -- MntInfo.uid = MntOpts.uid = 0; -- MntInfo.gid = MntOpts.gid = gidMount; -- MntInfo.dmode = MntOpts.dmode = 0770; -- MntInfo.fmode = MntOpts.fmode = 0770; -- MntInfo.dmask = MntOpts.dmask = 0000; -- MntInfo.fmask = MntOpts.fmask = 0000; -- memcpy(MntInfo.szTag, g_szTag, sizeof(g_szTag)); AssertCompile(sizeof(MntInfo.szTag) >= sizeof(g_szTag)); -- rc = RTStrCopy(MntInfo.name, sizeof(MntInfo.name), pEntry->pszName); -- if (RT_FAILURE(rc)) -+ unsigned long fFlags = MS_NODEV; -+ char szOpts[MAX_MNTOPT_STR] = { '\0', }; -+ ssize_t cchOpts = RTStrPrintf2(szOpts, sizeof(szOpts), -+ "uid=0,gid=%d,dmode=0770,fmode=0770,dmask=0000,fmask=0000", gidMount); -+ if (cchOpts <= 0) - { -- VGSvcError("vbsvcAutomounterMountIt: Share name '%s' is too long for the MntInfo.name field!\n", pEntry->pszName); -- return rc; -+ VGSvcError("vbsvcAutomounterMountIt: szOpts overflow! %zd\n", cchOpts); -+ return VERR_BUFFER_OVERFLOW; - } - -- errno = 0; -- unsigned long fFlags = MS_NODEV; -- rc = mount(pEntry->pszName, pEntry->pszActualMountPoint, "vboxsf", fFlags, &MntInfo); -+ rc = mount(pEntry->pszName, pEntry->pszActualMountPoint, "vboxsf", fFlags, szOpts); - if (rc == 0) - { - VGSvcVerbose(0, "vbsvcAutomounterMountIt: Successfully mounted '%s' on '%s'\n", - pEntry->pszName, pEntry->pszActualMountPoint); -- -- errno = 0; -- rc = vbsfmount_complete(pEntry->pszName, pEntry->pszActualMountPoint, fFlags, &MntOpts); -- if (rc != 0) /* Ignorable. /etc/mtab is probably a link to /proc/mounts. */ -- VGSvcVerbose(1, "vbsvcAutomounterMountIt: vbsfmount_complete failed: %s (%d/%d)\n", -- rc == 1 ? "open_memstream" : rc == 2 ? "setmntent" : rc == 3 ? "addmntent" : "unknown", rc, errno); - return VINF_SUCCESS; - } - else if (errno == EINVAL) diff --git a/sources b/sources index d4206e2..8ffcd75 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (VirtualBox-6.1.22.tar.bz2) = ab0fc7cea455f74598d5da18528404405221e9c96a34f0355a39187524240596db4b54e1b1af5f152d5329b8e7977218819c0605f0d0ba0d83a1fb8f8487548d +SHA512 (VirtualBox-6.1.26.tar.bz2) = 7668abaa6e5e9cfbc3c7ae1c6efc11663bce906aa002f78cf2c7acbf9b47f96faeb64c2762330c7091694c191ff2311f3674bd930cfdc020c23ef1d4fd893c9b diff --git a/update_vbox.sh b/update_vbox.sh index 9d86161..7dfbfd1 100755 --- a/update_vbox.sh +++ b/update_vbox.sh @@ -1,8 +1,8 @@ -VERSION=6.1.22 -BUG=1955281 +VERSION=6.1.26 +BUG=1984089 REL=1 -RAWHIDE=35 -BRANCHES="f34 f33 f32" +RAWHIDE=36 +BRANCHES="f35 f34 f33" if [ -z "$1" ] then stage=0 diff --git a/virtualbox-guest-additions.spec b/virtualbox-guest-additions.spec index aaeedf0..662565f 100644 --- a/virtualbox-guest-additions.spec +++ b/virtualbox-guest-additions.spec @@ -1,8 +1,8 @@ %global __provides_exclude_from %{_libdir}/VBoxGuestAdditions Name: virtualbox-guest-additions -Version: 6.1.22 -Release: 2%{?dist} +Version: 6.1.26 +Release: 1%{?dist} Summary: VirtualBox Guest Additions License: GPLv2 or (GPLv2 and CDDL) URL: https://www.virtualbox.org/wiki/VirtualBox @@ -28,6 +28,7 @@ BuildRequires: libxslt BuildRequires: makeself BuildRequires: yasm BuildRequires: boost-devel +BuildRequires: liblzf-devel BuildRequires: libXcomposite-devel BuildRequires: libXdamage-devel BuildRequires: libXmu-devel @@ -74,12 +75,14 @@ rm -r src/VBox/Additions/WINNT rm -r src/VBox/Additions/os2 rm -r kBuild/ rm -r tools/ -# Remove bundle X11 sources and some lib sources +# Remove bundle X11 sources and some lib sources, before patching. rm -r src/VBox/Additions/x11/x11include/ rm -r src/VBox/Additions/x11/x11stubs/ rm -r src/VBox/Additions/3D/mesa/mesa-17.3.9/ -rm -r src/libs/libxml2-2.9.*/ +rm -r src/libs/liblzf-3.*/ rm -r src/libs/libpng-1.6.*/ +rm -r src/libs/libxml2-2.9.*/ +rm -r src/libs/openssl-1.*/ rm -r src/libs/zlib-1.2.*/ @@ -89,7 +92,7 @@ rm -r src/libs/zlib-1.2.*/ umask 0022 # VirtualBox build system installs and builds in the same step, -# not allways looking for the installed files to places they have +# not always looking for the installed files in places they have # really been installed to. Therefore we do not override any of # the installation paths, but install the tree with the default # layout under 'obj' and shuffle files around in %%install. @@ -104,6 +107,8 @@ kmk %{_smp_mflags} \ VBOX_NO_LEGACY_XORG_X11=1 \ SDK_VBOX_LIBPNG_INCS="" \ SDK_VBOX_LIBXML2_INCS="" \ + SDK_VBOX_LZF_LIBS="lzf" \ + SDK_VBOX_LZF_INCS="/usr/include/liblzf" \ SDK_VBOX_OPENSSL_INCS="" \ SDK_VBOX_OPENSSL_LIBS="ssl crypto" \ SDK_VBOX_ZLIB_INCS="" \ @@ -178,6 +183,9 @@ getent passwd vboxadd >/dev/null || \ %changelog +* Wed Aug 11 2021 Sérgio Basto - 6.1.26-1 +- Update Virtualbox Guest Additions to 6.1.26 (#1984089) + * Fri Jul 23 2021 Fedora Release Engineering - 6.1.22-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild