Hello community,
here is the log from the commit of package virtualbox for openSUSE:Factory checked in at 2019-05-03 22:21:29
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/virtualbox (Old)
and /work/SRC/openSUSE:Factory/.virtualbox.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "virtualbox"
Fri May 3 22:21:29 2019 rev:177 rq:699509 version:6.0.6
Changes:
--------
--- /work/SRC/openSUSE:Factory/virtualbox/virtualbox.changes 2019-04-28 19:59:26.534935343 +0200
+++ /work/SRC/openSUSE:Factory/.virtualbox.new.5148/virtualbox.changes 2019-05-03 22:21:33.768603419 +0200
@@ -11,0 +12,75 @@
+Fri Apr 19 15:45:46 UTC 2019 - Larry Finger
+
+- Updated file "Fixes_for_Leap15.1.patch" to handle one addition problem due to backporting of kernel APIa.
+ Remove "BuildRequires: quilt" - that package is not needed.
+
+ VirtualBox 6.0.6 fixes the following: CVE-2019-2656, CVE-2019-2680, CVE-2019-2696, CVE-2019-2703, CVE-2019-2721,
+ CVE-2019-2722, CVE-2019-2723, CVE-2019-2657, CVE-2019-2690, CVE-2019-2679,
+ CVE-2019-2678, and CVE-2019-2574 boo#1132827.
+
+-------------------------------------------------------------------
+Thu Apr 18 15:40:18 UTC 2019 - Larry Finger
+
+- Version bump to 6.0.6 (released April 17 2019 by Oracle)
+
+The following files in the openSUSE implemetation are removed: "fix_32_bit_builds.patch", "fixes_for_5.0.patch", and
+"fixes_for_5.1.patch". These issues are fixed upstream.
+
+This is a maintenance release. The following items were fixed and/or added by Oracle:
+
+Virtualization core: nested AMD virtualization fixes
+User interface: fixed copying directories in file manager
+User interface: fixed operation progress in file manager when copying content
+User interface: fixed operation progress when deleting snapshots
+User interface: fixed unattended installation of recent Ubuntu guests
+User interface: various additional improvements
+Storage: fixed loading saved states for LsiLogic devices (6.0.0 regression; bug #18263)
+Storage: fixed fixed reading certain QCOW2 images and support version 3 of the format readonly
+Storage: Improved IDE PCI emulation to allow NetWare IDE drivers to use bus-mastering
+Graphics: Improved VMSVGA support to work with old X servers which previously showed only a badly scrambled screen
+Graphics: fixed invisible mouse cursor with VMSVGA emulation and without mouse integration (bug #18239)
+Graphics: make EFI work with VMSVGA emulation (bug #18282)
+Graphics: remember last guest screen size VMSVGA emulation
+Graphics: fix RDP to guests using VMSVGA emulation
+Graphics: various additional VMSVGA emulation fixes
+Audio: implemented audio device enumeration for the DirectSound backend
+Network: fixed unwanted padding bytes in Windows host adaptor network packets (bug #18202 and bug #18355)
+Serial: fixed possible crash on Windows when using a host device (6.0.0 regression; bug #18319)
+Serial: fixed loopback handling in the emulation causing garbage to be sent during boot with Linux guests (6.0.0 regression; bug #18319)
+Shared folders: fixed duplicate folders after restoring a saved state (bug #18373 and other)
+Drag and drop: fixed copying files from guest host (bug #18305)
+Recording: fixed modifying settings via VBoxManage (bug #18494)
+VBoxManage: crash fix (bug #18341)
+Fixed hangs during failed virtual machine start-up
+Linux host and guest: support Linux 5.0 and 5.1, thank you Valdis Kletnieks (see also bug #18515)
+Linux host: support kernel 4.4.169 (bug #18315)
+Linux host: fix logging when building Linux kernel modules (bug #18226)
+Linux host: clarified building Linux host drivers with secure boot (bug #18312)
+Installers: reduced size of packages
+Web services: work with Java 11
+LibreSSL compilation fix, thank you Stefan Strogin
+Windows guests: fixed running applications which use complex display topologies with WDDM driver, fixed Skype for Business hangs (bug #17092)
+Windows guests: fixed an occasional guest crash with WDDM driver and VBoxSVGA adapter (bug #18369)
+Windows guests: shared folder file creation detection issue (bug #9276)
+Linux guests: shared folder performance and reliability improvements and missing features (bugs #17360, #819)
+OS/2 guests: shared folder fixes (bug #18376 and bug #18379)
+
+-------------------------------------------------------------------
+Wed Apr 17 12:42:15 UTC 2019 - Larry Finger
+
+- The VirtualBox packages for both Tumbleweed and Leap 15.1 are now derived from the sources in Factory;
+ however, the underlying kernels are very different in that vboxvideo.ko is built-into the TW kernel,
+ thus the package did not try to build that module. The result is that Leap 15.1 guests have only 640x480
+ resolution (boo#1132439). These changes conditionally turn building of the kernel module back on. As TW
+ does not need the module, it is only built for Leap 15.1.
+
+-------------------------------------------------------------------
+Sun Apr 14 16:32:29 UTC 2019 - Larry Finger
+
+- An instance of /usr/lib/virtualbox/VirtualBoxVM being installed without SUID privilege
+ has been reported as boo#1132379. Unfortunately, the error message thrown by VB in this
+ case is rather opaque. To help the user recover, the wrapper /usr/bin/VirtualBox has
+ been modified to check the permissions and pop up a warning describing the problem and
+ showing the command needed to fix the problem. File "vbox-suid-warning.diff" is added.
+
+-------------------------------------------------------------------
Old:
----
VirtualBox-6.0.4-patched.tar.bz2
fix_32_bit_builds.patch
fixes_for_5.0.patch
fixes_for_5.1.patch
New:
----
VirtualBox-6.0.6-patched.tar.bz2
vbox-suid-warning.diff
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ virtualbox.spec ++++++
--- /var/tmp/diff_new_pack.qQfehJ/_old 2019-05-03 22:21:37.212610409 +0200
+++ /var/tmp/diff_new_pack.qQfehJ/_new 2019-05-03 22:21:37.212610409 +0200
@@ -42,7 +42,7 @@
%define _udevrulesdir /usr/lib/udev/rules.d
Name: virtualbox
# ********* If the VB version exceeds 6.0.x, notify the libvirt maintainer!!
-Version: 6.0.4
+Version: 6.0.6
Release: 0
Summary: VirtualBox is an Emulator
License: GPL-2.0-or-later
@@ -110,6 +110,8 @@
Patch108: virtualbox-snpritnf-buffer-overflow.patch
# Patch to add code to explain USB Passthru
Patch109: vbox-usb-warning.diff
+# Patch to ensure that VirtualBoxVM is SUID
+Patch110: vbox-suid-warning.diff
# Fix change in kernel API for ttm_bo_move_memcpy()
Patch112: modify_for_4_8_bo_move.patch
# Remove all mention of _smp_mflags
@@ -126,17 +128,12 @@
Patch122: fixes_for_Qt5.11.patch
# Switch to Python 3.4+
Patch123: switch_to_python3.4+.patch
-Patch124: fix_32_bit_builds.patch
# Use build parameters to control video driver problems
Patch125: remove_vbox_video_build.patch
-# Fix for API changes in late v5.0
-Patch126: fixes_for_5.0.patch
# fix library search
Patch128: fix_lib_search.patch
# Fixes for modified kernel in Leap 15.1
Patch129: fixes_for_Leap15.1.patch
-# Fixes for kernel 5.1
-Patch130: fixes_for_5.1.patch
# Fixes for Qt5.13
Patch131: fixes_for_qt5.13.patch
#endif
@@ -183,7 +180,6 @@
BuildRequires: pam-devel
BuildRequires: pulseaudio-devel
BuildRequires: python3-devel
-BuildRequires: quilt
BuildRequires: sed
BuildRequires: update-desktop-files
BuildRequires: which
@@ -429,6 +425,7 @@
%patch107 -p1
%patch108 -p1
%patch109 -p1
+%patch110 -p1
%patch112 -p1
%patch113 -p1
%patch115 -p1
@@ -437,12 +434,9 @@
%patch120 -p1
%patch122 -p1
%patch123 -p1
-%patch124 -p1
%patch125 -p1
-%patch126 -p1
%patch128 -p1
%patch129 -p1
-%patch130 -p1
%if %{qt5ver} >= 51300
%patch131 -p1
@@ -524,10 +518,15 @@
#
# build kernel modules for guest and host (check novel-kmp package as example)
# host modules : vboxdrv,vboxnetflt,vboxnetadp,vboxpci
-# guest modules : vboxguest,vboxsf
+# guest modules : vboxguest,vboxsf vboxvideo (for Leap 15.1)
echo "build kernel modules"
+%if 0%{?suse_version} == 1500
+for vbox_module in out/linux.*/release/bin/src/vbox{drv,netflt,netadp,pci} \
+ out/linux.*/release/bin/additions/src/vbox{guest,sf,video}; do
+%else
for vbox_module in out/linux.*/release/bin/src/vbox{drv,netflt,netadp,pci} \
out/linux.*/release/bin/additions/src/vbox{guest,sf}; do
+%endif
#get the module name from path
module_name=$(basename "$vbox_module")
@@ -593,7 +592,11 @@
export INITRD_IN_POSTTRANS=1
export KMP_NEEDS_MKINITRD=0
#to install modules we use here similar steps like in build phase, go through all the modules :
+%if 0%{?suse_version} == 1500
+for module_name in vbox{drv,netflt,pci,netadp,guest,sf,video}
+%else
for module_name in vbox{drv,netflt,pci,netadp,guest,sf}
+%endif
do
#and through the all flavors
for flavor in %{flavors_to_build}; do
@@ -659,6 +662,7 @@
install -m 755 VBoxExtPackHelperApp %{buildroot}%{_vbox_instdir}
install -m 755 VBoxTestOGL %{buildroot}%{_vbox_instdir}
install -m 755 VBoxPermissionMessage %{buildroot}%{_vbox_instdir}
+install -m 755 VBoxSUIDMessage %{buildroot}%{_vbox_instdir}
install -m 755 VBoxUSB_DevRules %{buildroot}%{_vbox_instdir}
install -m 755 VBoxNetDHCP %{buildroot}%{_vbox_instdir}
install -m 755 VBoxNetAdpCtl %{buildroot}%{_vbox_instdir}
@@ -787,6 +791,9 @@
# Add groups for seamless mode and shared folders:
getent group vboxguest >/dev/null || groupadd -r vboxguest
getent group vboxsf >/dev/null || groupadd -r vboxsf
+%if 0%{?suse_version} == 1500
+getent group vboxvideo >/dev/null || groupadd -r vboxvideo
+%endif
%service_add_pre vboxadd-service.service
%pre websrv
@@ -957,6 +964,7 @@
%files qt
%defattr(-, root, root)
%attr(0755,root,vboxusers) %{_vbox_instdir}/VBoxPermissionMessage
+%attr(0755,root,vboxusers) %{_vbox_instdir}/VBoxSUIDMessage
%attr(0755,root,vboxusers) %{_vbox_instdir}/VBoxUSB_DevRules
%attr(0755,root,vboxusers) %{_vbox_instdir}/VirtualBox6
%verify(not mode) %attr(0750,root,vboxusers) %{_vbox_instdir}/VirtualBoxVM
++++++ UserManual.pdf ++++++
(binary differes)
++++++ VirtualBox-6.0.4-patched.tar.bz2 -> VirtualBox-6.0.6-patched.tar.bz2 ++++++
/work/SRC/openSUSE:Factory/virtualbox/VirtualBox-6.0.4-patched.tar.bz2 /work/SRC/openSUSE:Factory/.virtualbox.new.5148/VirtualBox-6.0.6-patched.tar.bz2 differ: char 11, line 1
++++++ fixes_for_Leap15.1.patch ++++++
--- /var/tmp/diff_new_pack.qQfehJ/_old 2019-05-03 22:21:37.272610530 +0200
+++ /var/tmp/diff_new_pack.qQfehJ/_new 2019-05-03 22:21:37.276610538 +0200
@@ -1,8 +1,8 @@
-Index: VirtualBox-5.2.24/src/VBox/Additions/linux/drm/vbox_drv.c
+Index: VirtualBox-6.0.6/src/VBox/Additions/linux/drm/vbox_drv.c
===================================================================
---- VirtualBox-5.2.24.orig/src/VBox/Additions/linux/drm/vbox_drv.c
-+++ VirtualBox-5.2.24/src/VBox/Additions/linux/drm/vbox_drv.c
-@@ -264,12 +264,6 @@ static struct drm_driver driver = {
+--- VirtualBox-6.0.6.orig/src/VBox/Additions/linux/drm/vbox_drv.c
++++ VirtualBox-6.0.6/src/VBox/Additions/linux/drm/vbox_drv.c
+@@ -283,12 +283,6 @@ static struct drm_driver driver = {
.lastclose = vbox_driver_lastclose,
.master_set = vbox_master_set,
.master_drop = vbox_master_drop,
@@ -15,3 +15,154 @@
.fops = &vbox_fops,
.irq_handler = vbox_irq_handler,
.name = DRIVER_NAME,
+Index: VirtualBox-6.0.6/src/VBox/Additions/linux/drm/vbox_mode.c
+===================================================================
+--- VirtualBox-6.0.6.orig/src/VBox/Additions/linux/drm/vbox_mode.c
++++ VirtualBox-6.0.6/src/VBox/Additions/linux/drm/vbox_mode.c
+@@ -498,7 +498,8 @@ static void vbox_set_edid(struct drm_con
+ for (i = 0; i < EDID_SIZE - 1; ++i)
+ sum += edid[i];
+ edid[EDID_SIZE - 1] = (0x100 - (sum & 0xFF)) & 0xFF;
+-#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 19, 0)
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 19, 0) || \
++ defined(CONFIG_SUSE_VERSION)
+ drm_connector_update_edid_property(connector, (struct edid *)edid);
+ #else
+ drm_mode_connector_update_edid_property(connector, (struct edid *)edid);
+@@ -669,7 +670,8 @@ static int vbox_connector_init(struct dr
+ drm_connector_register(connector);
+ #endif
+
+-#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 19, 0)
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 19, 0) || \
++ defined(CONFIG_SUSE_VERSION)
+ drm_connector_attach_encoder(connector, encoder);
+ #else
+ drm_mode_connector_attach_encoder(connector, encoder);
+Index: VirtualBox-6.0.6/src/VBox/Additions/linux/drm/vbox_ttm.c
+===================================================================
+--- VirtualBox-6.0.6.orig/src/VBox/Additions/linux/drm/vbox_ttm.c
++++ VirtualBox-6.0.6/src/VBox/Additions/linux/drm/vbox_ttm.c
+@@ -210,7 +210,8 @@ static struct ttm_backend_func vbox_tt_b
+ .destroy = &vbox_ttm_backend_destroy,
+ };
+
+-#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 17, 0)) && !defined(RHEL_76)
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 17, 0)) && !defined(RHEL_76) && \
++ !defined(CONFIG_SUSE_VERSION)
+ static struct ttm_tt *vbox_ttm_tt_create(struct ttm_bo_device *bdev,
+ unsigned long size,
+ u32 page_flags,
+@@ -227,7 +228,8 @@ static struct ttm_tt *vbox_ttm_tt_create
+ return NULL;
+
+ tt->func = &vbox_tt_backend_func;
+-#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 17, 0)) && !defined(RHEL_76)
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 17, 0)) && !defined(RHEL_76) && \
++ !defined(CONFIG_SUSE_VERSION)
+ if (ttm_tt_init(tt, bdev, size, page_flags, dummy_read_page)) {
+ #else
+ if (ttm_tt_init(tt, bo, page_flags)) {
+@@ -240,7 +242,8 @@ static struct ttm_tt *vbox_ttm_tt_create
+ }
+
+ #if LINUX_VERSION_CODE < KERNEL_VERSION(4, 17, 0)
+-# if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0)) && !defined(RHEL_76)
++# if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0)) && !defined(RHEL_76) && \
++ !defined(CONFIG_SUSE_VERSION)
+ static int vbox_ttm_tt_populate(struct ttm_tt *ttm)
+ {
+ return ttm_pool_populate(ttm);
+@@ -274,7 +277,8 @@ static struct ttm_bo_driver vbox_bo_driv
+ .io_mem_reserve = &vbox_ttm_io_mem_reserve,
+ .io_mem_free = &vbox_ttm_io_mem_free,
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 12, 0) || defined(RHEL_75)
+-# if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0)) && !defined(RHEL_76)
++# if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0)) && !defined(RHEL_76) && \
++ !defined(CONFIG_SUSE_VERSION)
+ .io_mem_pfn = ttm_bo_default_io_mem_pfn,
+ # endif
+ #endif
+@@ -420,7 +424,8 @@ int vbox_bo_create(struct drm_device *de
+
+ ret = ttm_bo_init(&vbox->ttm.bdev, &vboxbo->bo, size,
+ ttm_bo_type_device, &vboxbo->placement,
+-#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 17, 0) && !defined(RHEL_76)
++#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 17, 0) && !defined(RHEL_76) && \
++ !defined(CONFIG_SUSE_VERSION)
+ align >> PAGE_SHIFT, false, NULL, acc_size,
+ #else
+ align >> PAGE_SHIFT, false, acc_size,
+@@ -449,7 +454,8 @@ static inline u64 vbox_bo_gpu_offset(str
+
+ int vbox_bo_pin(struct vbox_bo *bo, u32 pl_flag, u64 *gpu_addr)
+ {
+-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 16, 0)) || defined(RHEL_76)
++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 16, 0)) || defined(RHEL_76) || \
++ defined(CONFIG_SUSE_VERSION)
+ struct ttm_operation_ctx ctx = { false, false };
+ #endif
+ int i, ret;
+@@ -467,7 +473,8 @@ int vbox_bo_pin(struct vbox_bo *bo, u32
+ for (i = 0; i < bo->placement.num_placement; i++)
+ PLACEMENT_FLAGS(bo->placements[i]) |= TTM_PL_FLAG_NO_EVICT;
+
+-#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0)) && !defined(RHEL_76)
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0)) && !defined(RHEL_76) && \
++ !defined(CONFIG_SUSE_VERSION)
+ ret = ttm_bo_validate(&bo->bo, &bo->placement, false, false);
+ #else
+ ret = ttm_bo_validate(&bo->bo, &bo->placement, &ctx);
+@@ -485,7 +492,8 @@ int vbox_bo_pin(struct vbox_bo *bo, u32
+
+ int vbox_bo_unpin(struct vbox_bo *bo)
+ {
+-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 16, 0)) || defined(RHEL_76)
++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 16, 0)) || defined(RHEL_76) || \
++ defined(CONFIG_SUSE_VERSION)
+ struct ttm_operation_ctx ctx = { false, false };
+ #endif
+ int i, ret;
+@@ -501,7 +509,8 @@ int vbox_bo_unpin(struct vbox_bo *bo)
+ for (i = 0; i < bo->placement.num_placement; i++)
+ PLACEMENT_FLAGS(bo->placements[i]) &= ~TTM_PL_FLAG_NO_EVICT;
+
+-#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0)) && !defined(RHEL_76)
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0)) && !defined(RHEL_76) && \
++ !defined(CONFIG_SUSE_VERSION)
+ ret = ttm_bo_validate(&bo->bo, &bo->placement, false, false);
+ #else
+ ret = ttm_bo_validate(&bo->bo, &bo->placement, &ctx);
+@@ -519,7 +528,8 @@ int vbox_bo_unpin(struct vbox_bo *bo)
+ */
+ int vbox_bo_push_sysram(struct vbox_bo *bo)
+ {
+-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 16, 0)) || defined(RHEL_76)
++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 16, 0)) || defined(RHEL_76) || \
++ defined(CONFIG_SUSE_VERSION)
+ struct ttm_operation_ctx ctx = { false, false };
+ #endif
+ int i, ret;
+@@ -540,7 +550,8 @@ int vbox_bo_push_sysram(struct vbox_bo *
+ for (i = 0; i < bo->placement.num_placement; i++)
+ PLACEMENT_FLAGS(bo->placements[i]) |= TTM_PL_FLAG_NO_EVICT;
+
+-#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0)) && !defined(RHEL_76)
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0)) && !defined(RHEL_76) && \
++ !defined(CONFIG_SUSE_VERSION)
+ ret = ttm_bo_validate(&bo->bo, &bo->placement, false, false);
+ #else
+ ret = ttm_bo_validate(&bo->bo, &bo->placement, &ctx);
+Index: VirtualBox-6.0.6/src/VBox/Additions/linux/drm/vbox_main.c
+===================================================================
+--- VirtualBox-6.0.6.orig/src/VBox/Additions/linux/drm/vbox_main.c
++++ VirtualBox-6.0.6/src/VBox/Additions/linux/drm/vbox_main.c
+@@ -600,7 +600,7 @@ int vbox_dumb_destroy(struct drm_file *f
+ }
+ #endif
+
+-#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 19, 0)
++#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 19, 0) && !defined(CONFIG_SUSE_VERSION)
+ static void ttm_bo_put(struct ttm_buffer_object *bo)
+ {
+ ttm_bo_unref(&bo);
++++++ security_fixes.patch ++++++
--- /var/tmp/diff_new_pack.qQfehJ/_old 2019-05-03 22:21:37.292610571 +0200
+++ /var/tmp/diff_new_pack.qQfehJ/_new 2019-05-03 22:21:37.296610579 +0200
@@ -5,24 +5,29 @@
#
# January 31, 2019 - Larry Finger
#
-Index: VirtualBox-6.0.4/src/VBox/Additions/linux/installer/vboxadd.sh
+Index: VirtualBox-6.0.6/src/VBox/Additions/linux/installer/vboxadd.sh
===================================================================
---- VirtualBox-6.0.4.orig/src/VBox/Additions/linux/installer/vboxadd.sh
-+++ VirtualBox-6.0.4/src/VBox/Additions/linux/installer/vboxadd.sh
-@@ -560,6 +560,9 @@ dmnstatus()
+--- VirtualBox-6.0.6.orig/src/VBox/Additions/linux/installer/vboxadd.sh
++++ VirtualBox-6.0.6/src/VBox/Additions/linux/installer/vboxadd.sh
+@@ -489,9 +489,11 @@ dmnstatus()
fi
}
+-for i; do
+- case "$i" in quiet) QUIET=yes;; esac
+-done
+echo "This script has insecurities. It must never be used in openSUSE without consultine Security."
+exit 1
+
- case "$2" in quiet)
- QUIET=yes;;
- esac
-Index: VirtualBox-6.0.4/src/VBox/Installer/linux/vboxdrv.sh
++case "$2" in quiet)
++ QUIET=yes;;
+ case "$1" in
+ # Does setup without clean-up first and marks all kernels currently found on the
+ # system so that we can see later if any were added.
+Index: VirtualBox-6.0.6/src/VBox/Installer/linux/vboxdrv.sh
===================================================================
---- VirtualBox-6.0.4.orig/src/VBox/Installer/linux/vboxdrv.sh
-+++ VirtualBox-6.0.4/src/VBox/Installer/linux/vboxdrv.sh
+--- VirtualBox-6.0.6.orig/src/VBox/Installer/linux/vboxdrv.sh
++++ VirtualBox-6.0.6/src/VBox/Installer/linux/vboxdrv.sh
@@ -37,6 +37,9 @@ DEVICE=/dev/vboxdrv
MODPROBE=/sbin/modprobe
SCRIPTNAME=vboxdrv.sh
++++++ vbox-suid-warning.diff ++++++
Index: VirtualBox-6.0.4/src/apps/Makefile.kmk
===================================================================
--- VirtualBox-6.0.4.orig/src/apps/Makefile.kmk
+++ VirtualBox-6.0.4/src/apps/Makefile.kmk
@@ -33,5 +33,7 @@ include $(PATH_SUB_CURRENT)/VBoxPermissi
include $(PATH_SUB_CURRENT)/VBoxUSB_DevRules/Makefile.kmk
+include $(PATH_SUB_CURRENT)/VBoxSUIDMessage/Makefile.kmk
+
include $(FILE_KBUILD_SUB_FOOTER)
Index: VirtualBox-6.0.4/src/apps/VBoxSUIDMessage/Makefile.kmk
===================================================================
--- /dev/null
+++ VirtualBox-6.0.4/src/apps/VBoxSUIDMessage/Makefile.kmk
@@ -0,0 +1,33 @@
+# $Id: Makefile.kmk 28800 2010-04-27 08:22:32Z vboxsync $
+## @file
+#
+# VBoxSUIDMessage is wrapper for suse users
+#
+#
+# Copyright (C) 2009 Oracle Corporation
+#
+# This file is part of VirtualBox Open Source Edition (OSE), as
+# available from http://www.virtualbox.org. This file is free software;
+# you can redistribute it and/or modify it under the terms of the GNU
+# General Public License (GPL) as published by the Free Software
+# Foundation, in version 2 as it comes in the "COPYING" file of the
+# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
+# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
+#
+
+
+SUB_DEPTH = ../../..
+include $(KBUILD_PATH)/subheader.kmk
+
+PROGRAMS += VBoxSUIDMessage
+
+VBoxSUIDMessage_TEMPLATE = VBOXQTGUIEXE
+VBoxSUIDMessage_SOURCES = VBoxSUIDMessage.cpp
+VBoxSUIDMessage_QT_MODULES = Core Gui
+VBoxSUIDMessage_QT_MODULES += Widgets
+
+#INSTALLS += VBoxSUIDMessage
+
+include $(KBUILD_PATH)/subfooter.kmk
+
+
Index: VirtualBox-6.0.4/src/apps/VBoxSUIDMessage/VBoxSUIDMessage.cpp
===================================================================
--- /dev/null
+++ VirtualBox-6.0.4/src/apps/VBoxSUIDMessage/VBoxSUIDMessage.cpp
@@ -0,0 +1,15 @@
+#include
+#include
+int main(int argc, char *argv[])
+{
+ QApplication app(argc, argv);
+ QMessageBox msgBox;
+ msgBox.setWindowTitle(QObject::tr("File Permissions problem !"));
+ msgBox.setText(QObject::tr("File VirtualBoxVM must be SUID, but the file permissions are wrong.\n\n"
+ "To fix this problem, please run\n"
+ "sudo chmod 4711 /usr/lib/virtualbox/VirtualBoxVM\n\n"
+ "Until this is done, Virtual Machines cannot run."));
+ msgBox.exec();
+ app.quit();
+ return 0;
+}
++++++ vbox-vboxadd-init-script.diff ++++++
--- /var/tmp/diff_new_pack.qQfehJ/_old 2019-05-03 22:21:37.324610636 +0200
+++ /var/tmp/diff_new_pack.qQfehJ/_new 2019-05-03 22:21:37.324610636 +0200
@@ -1,7 +1,7 @@
-Index: VirtualBox-6.0.0/src/VBox/Additions/linux/installer/vboxadd.sh
+Index: VirtualBox-6.0.6/src/VBox/Additions/linux/installer/vboxadd.sh
===================================================================
---- VirtualBox-6.0.0.orig/src/VBox/Additions/linux/installer/vboxadd.sh
-+++ VirtualBox-6.0.0/src/VBox/Additions/linux/installer/vboxadd.sh
+--- VirtualBox-6.0.6.orig/src/VBox/Additions/linux/installer/vboxadd.sh
++++ VirtualBox-6.0.6/src/VBox/Additions/linux/installer/vboxadd.sh
@@ -26,11 +26,14 @@
# Provides: vboxadd
# Required-Start:
@@ -18,7 +18,7 @@
### END INIT INFO
## @todo This file duplicates a lot of script with vboxdrv.sh. When making
-@@ -141,18 +144,9 @@ module_build_log()
+@@ -121,20 +124,11 @@ module_build_log()
dev=/dev/vboxguest
userdev=/dev/vboxuser
@@ -33,11 +33,13 @@
-fi
-test -n "$INSTALL_DIR" -a -n "$INSTALL_VER" ||
- fail "Configuration file $config not complete"
+ MODULE_SRC="$INSTALL_DIR/src/vboxguest-$INSTALL_VER"
+ BUILDINTMP="$MODULE_SRC/build_in_tmp"
-
running_vboxguest()
{
lsmod | grep -q "vboxguest[^_-]"
-@@ -195,12 +189,6 @@ do_vboxguest_non_udev()
+@@ -177,12 +171,6 @@ do_vboxguest_non_udev()
fail "Cannot create device $dev with major $maj and minor $min"
}
fi
@@ -50,7 +52,7 @@
if [ ! -c $userdev ]; then
maj=10
-@@ -211,12 +199,6 @@ do_vboxguest_non_udev()
+@@ -193,12 +181,6 @@ do_vboxguest_non_udev()
rmmod vboxguest 2>/dev/null
fail "Cannot create device $userdev with major $maj and minor $min"
}
@@ -63,29 +65,16 @@
fi
fi
}
-@@ -224,10 +206,9 @@ do_vboxguest_non_udev()
- start()
- {
- begin "Starting."
-- if test -z "${INSTALL_NO_MODULE_BUILDS}"; then
-- setup --quick
-+ setup --quick
- test -d /sys &&
-- ps -A -o comm | grep -q '/*udevd$' 2>/dev/null ||
-+ ps -A -o comm | grep -q '/*udevd$' 2>/dev/null ||
- no_udev=1
- running_vboxguest || {
- rm -f $dev || {
-@@ -236,7 +217,7 @@ start()
- rm -f $userdev || {
- fail "Cannot remove $userdev"
- }
-- $MODPROBE vboxguest >/dev/null 2>&1 ||
-+ $MODPROBE vboxguest >/dev/null 2>&1 || {
- fail "modprobe vboxguest failed"
- case "$no_udev" in 1)
- sleep .5;;
-@@ -434,9 +415,9 @@ create_udev_rule()
+@@ -260,7 +242,7 @@ cleanup_modules()
+ done
+ if test -z "${keep}"; then
+ rm -rf /lib/modules/"${KERN_VER}"
+- rm -f /boot/initrd.img-"${KERN_VER}"
++ rm -f /boot/initrd.img-"${KERN_VER}"
+ fi
+ done
+ for i in ${OLDMODULES}; do
+@@ -356,9 +338,9 @@ create_udev_rule()
echo "KERNEL=${udev_fix}\"vboxuser\", NAME=\"vboxuser\", OWNER=\"vboxadd\", MODE=\"0666\"" >> /etc/udev/rules.d/60-vboxadd.rules
fi
}
@@ -98,54 +87,44 @@
# And a post-installation script for rebuilding modules when a new kernel
# is installed.
mkdir -p /etc/kernel/postinst.d /etc/kernel/prerm.d
-@@ -467,20 +448,13 @@ shared_folder_setup()
- ## @todo It would be nicer if the kernel module just parsed parameters
- # itself instead of needing a separate binary to do that.
- ln -sf "${INSTALL_DIR}/other/mount.vboxsf" /sbin
-- # SELinux security context for the mount helper.
-- if test -e /etc/selinux/config; then
-- # This is correct. semanage maps this to the real path, and it aborts
-- # with an error, telling you what you should have typed, if you specify
-- # the real path. The "chcon" is there as a back-up for old guests.
-- command -v semanage > /dev/null &&
-- semanage fcontext -a -t mount_exec_t "${INSTALL_DIR}/other/mount.vboxsf"
-- chcon -t mount_exec_t "${INSTALL_DIR}/other/mount.vboxsf"
-- fi
-+ succ_msg
- }
-
+@@ -403,47 +385,15 @@ shared_folder_setup()
# setup_script
setup()
{
-+<<<<<<< found
- export BUILD_TYPE
- export USERNAME
-
-@@ -517,16 +491,33 @@ setup()
- shared_folder_setup
- if running_vboxguest || running_vboxadd; then
- info "Running kernel modules will not be replaced until the system is restarted"
+- # chcon is needed on old Fedora/Redhat systems. No one remembers which.
+- test ! -e /etc/selinux/config ||
+- chcon -t bin_t "$BUILDINTMP" 2>/dev/null
+-
+- if test -z "$INSTALL_NO_MODULE_BUILDS"; then
+- info "Building the VirtualBox Guest Additions kernel modules. This may take a while."
+- info "To build modules for other installed kernels, run"
+- info " /sbin/rcvboxadd quicksetup <version>"
+- info "or"
+- info " /sbin/rcvboxadd quicksetup all"
+- if test -d /lib/modules/"$TARGET_VER"/build; then
+- setup_modules "$TARGET_VER"
+- depmod
+- else
+- info "Kernel headers not found for target kernel $TARGET_VER. \
+-Please install them and execute
+- /sbin/rcvboxadd setup"
+- fi
- fi
+- create_vbox_user
+- create_udev_rule
+- test -n "${INSTALL_NO_MODULE_BUILDS}" || create_module_rebuild_script
+- shared_folder_setup
+- if running_vboxguest || running_vboxadd; then
+- info "Running kernel modules will not be replaced until the system is restarted"
+- fi
+-
+- # Put the X.Org driver in place. This is harmless if it is not needed.
+- # Also set up the OpenGL library.
+- myerr=`"${INSTALL_DIR}/init/vboxadd-x11" setup 2>&1`
+- test -z "${myerr}" || log "${myerr}"
+-
- return 0
-+||||||| expected
-+ export BUILD_TYPE
-+ export USERNAME
-+
-+ MODULE_SRC="$INSTALL_DIR/src/vboxguest-$INSTALL_VER"
-+ BUILDINTMP="$MODULE_SRC/build_in_tmp"
-+ chcon -t bin_t "$BUILDINTMP" > /dev/null 2>&1
-+
-+ test -z "${INSTALL_NO_MODULE_BUILDS}" && setup_modules
-+ create_vbox_user
-+ create_udev_rule
-+ test -z "${INSTALL_NO_MODULE_BUILDS}" && create_module_rebuild_script
-+ test -n "${QUICKSETUP}" && return 0
-+ shared_folder_setup
-+ if running_vboxguest || running_vboxadd; then
-+ info "Running kernel modules will not be replaced until the system is restarted"
-+=======
+ begin "Recompiling VirtualBox kernel module, NOT. It has been packaged."
-+>>>>>>> replacement
+ succ_msg
}
@@ -160,7 +139,7 @@
depmod
# Remove old module sources
-@@ -536,12 +527,13 @@ cleanup()
+@@ -453,12 +403,13 @@ cleanup()
fi
# Clean-up X11-related bits
@@ -170,18 +149,27 @@
# Remove other files
- if test -z "${INSTALL_NO_MODULE_BUILDS}"; then
- rm -f /etc/kernel/postinst.d/vboxadd /etc/kernel/prerm.d/vboxadd
-- rmdir -p /etc/kernel/postinst.d /etc/kernel/prerm.d 2>/dev/null
+- rmdir -p /etc/kernel/postinst.d /etc/kernel/prerm.d 2>/dev/null || true
+ rm /sbin/rcvboxadd 2>/dev/null
+ #rm /sbin/rcvboxadd-x11 2>/dev/null
+ rm -f /etc/kernel/postinst.d/vboxadd /etc/kernel/prerm.d/vboxadd
-+ rmdir -p /etc/kernel/postinst.d /etc/kernel/prerm.d 2>/dev/null
++ rmdir -p /etc/kernel/postinst.d /etc/kernel/prerm.d 2>/dev/null || true
fi
- rm /sbin/mount.vboxsf 2>/dev/null
- rm /etc/udev/rules.d/60-vboxadd.rules 2>/dev/null
-Index: VirtualBox-6.0.0/src/VBox/Additions/linux/installer/vboxadd-service.sh
+ rm -f /sbin/mount.vboxsf 2>/dev/null
+ rm -f /etc/udev/rules.d/60-vboxadd.rules 2>/dev/null
+@@ -489,7 +440,7 @@ start()
+ rm -f $userdev || {
+ fail "Cannot remove $userdev"
+ }
+- $MODPROBE vboxguest >/dev/null 2>&1 ||
++ $MODPROBE vboxguest >/dev/null 2>&1 || {
+ fail "modprobe vboxguest failed"
+ case "$no_udev" in 1)
+ sleep .5;;
+Index: VirtualBox-6.0.6/src/VBox/Additions/linux/installer/vboxadd-service.sh
===================================================================
---- VirtualBox-6.0.0.orig/src/VBox/Additions/linux/installer/vboxadd-service.sh
-+++ VirtualBox-6.0.0/src/VBox/Additions/linux/installer/vboxadd-service.sh
+--- VirtualBox-6.0.6.orig/src/VBox/Additions/linux/installer/vboxadd-service.sh
++++ VirtualBox-6.0.6/src/VBox/Additions/linux/installer/vboxadd-service.sh
@@ -26,7 +26,7 @@
# Provides: vboxadd-service
# Required-Start: vboxadd
@@ -191,10 +179,10 @@
# Default-Stop: 0 1 6
# X-Conflicts-With: systemd-timesyncd.service
# Description: VirtualBox Additions Service
-Index: VirtualBox-6.0.0/src/VBox/Installer/linux/vboxautostart-service.sh
+Index: VirtualBox-6.0.6/src/VBox/Installer/linux/vboxautostart-service.sh
===================================================================
---- VirtualBox-6.0.0.orig/src/VBox/Installer/linux/vboxautostart-service.sh
-+++ VirtualBox-6.0.0/src/VBox/Installer/linux/vboxautostart-service.sh
+--- VirtualBox-6.0.6.orig/src/VBox/Installer/linux/vboxautostart-service.sh
++++ VirtualBox-6.0.6/src/VBox/Installer/linux/vboxautostart-service.sh
@@ -23,7 +23,7 @@
# Provides: vboxautostart-service
# Required-Start: vboxdrv
@@ -204,10 +192,10 @@
# Default-Stop: 0 1 6
# Description: VirtualBox autostart service
### END INIT INFO
-Index: VirtualBox-6.0.0/src/VBox/Installer/linux/vboxballoonctrl-service.sh
+Index: VirtualBox-6.0.6/src/VBox/Installer/linux/vboxballoonctrl-service.sh
===================================================================
---- VirtualBox-6.0.0.orig/src/VBox/Installer/linux/vboxballoonctrl-service.sh
-+++ VirtualBox-6.0.0/src/VBox/Installer/linux/vboxballoonctrl-service.sh
+--- VirtualBox-6.0.6.orig/src/VBox/Installer/linux/vboxballoonctrl-service.sh
++++ VirtualBox-6.0.6/src/VBox/Installer/linux/vboxballoonctrl-service.sh
@@ -23,7 +23,7 @@
# Provides: vboxballoonctrl-service
# Required-Start: vboxdrv
@@ -217,10 +205,10 @@
# Default-Stop: 0 1 6
# Description: VirtualBox watchdog daemon
### END INIT INFO
-Index: VirtualBox-6.0.0/src/VBox/ValidationKit/testboxscript/linux/testboxscript-service.sh
+Index: VirtualBox-6.0.6/src/VBox/ValidationKit/testboxscript/linux/testboxscript-service.sh
===================================================================
---- VirtualBox-6.0.0.orig/src/VBox/ValidationKit/testboxscript/linux/testboxscript-service.sh
-+++ VirtualBox-6.0.0/src/VBox/ValidationKit/testboxscript/linux/testboxscript-service.sh
+--- VirtualBox-6.0.6.orig/src/VBox/ValidationKit/testboxscript/linux/testboxscript-service.sh
++++ VirtualBox-6.0.6/src/VBox/ValidationKit/testboxscript/linux/testboxscript-service.sh
@@ -31,7 +31,7 @@
# Provides: testboxscript-service
# Required-Start: $network
@@ -230,10 +218,10 @@
# Default-Stop: 0 1 6
# Description: TestBoxScript service
### END INIT INFO
-Index: VirtualBox-6.0.0/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs-nat.sh
+Index: VirtualBox-6.0.6/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs-nat.sh
===================================================================
---- VirtualBox-6.0.0.orig/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs-nat.sh
-+++ VirtualBox-6.0.0/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs-nat.sh
+--- VirtualBox-6.0.6.orig/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs-nat.sh
++++ VirtualBox-6.0.6/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs-nat.sh
@@ -31,7 +31,7 @@
# Provides: vboxtxs
# Required-Start: $network
@@ -243,10 +231,10 @@
# Default-Stop: 0 1 6
# Description: VirtualBox Test Execution Service
### END INIT INFO
-Index: VirtualBox-6.0.0/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs.sh
+Index: VirtualBox-6.0.6/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs.sh
===================================================================
---- VirtualBox-6.0.0.orig/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs.sh
-+++ VirtualBox-6.0.0/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs.sh
+--- VirtualBox-6.0.6.orig/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs.sh
++++ VirtualBox-6.0.6/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs.sh
@@ -31,7 +31,7 @@
# Provides: vboxtxs
# Required-Start: $network
++++++ virtualbox-guest-kmp-files ++++++
--- /var/tmp/diff_new_pack.qQfehJ/_old 2019-05-03 22:21:37.412610814 +0200
+++ /var/tmp/diff_new_pack.qQfehJ/_new 2019-05-03 22:21:37.412610814 +0200
@@ -3,3 +3,6 @@
%dir /lib/modules/%2-%1/extra
/lib/modules/%2-%1/extra/vboxsf.ko
/lib/modules/%2-%1/extra/vboxguest.ko
+%if 0%{?suse_version} == 1500
+/lib/modules/%2-%1/extra/vboxvideo.ko
+%endif
++++++ virtualbox-wrapper.sh ++++++
--- /var/tmp/diff_new_pack.qQfehJ/_old 2019-05-03 22:21:37.460610912 +0200
+++ /var/tmp/diff_new_pack.qQfehJ/_new 2019-05-03 22:21:37.460610912 +0200
@@ -54,5 +54,13 @@
fi
fi
fi
+# Check that /usr/lib/virtualbox/VirtualBoxVM has SUID permissions
+PERM=$(ls -l /usr/lib/virtualbox/VirtualBoxVM | grep rwsr)
+if [ -z "$PERM" ]
+then
+ logger -s "Wrong permissions for VirtualBoxVM - use 'sudo chmod 4711 /usr/lib/virtualbox/VirtualBoxVM' to fix"
+ /usr/lib/virtualbox/VBoxSUIDMessage
+ exit 1
+fi
# Now run the VB GUI
LD_LIBRARY_PATH="/usr/lib/virtualbox${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}" /usr/lib/virtualbox/VirtualBox6 $@