1
0
forked from pool/virtualbox
virtualbox/vbox-vboxadd-init-script.diff
Larry Finger 144e439b1a Accepting request 990809 from home:lwfinger:branches:Virtualization
- Version bump to 6.1.36 released by Oracle July 19 2022
  This is a maintenance release. The following items were fixed and/or added:
  VMM: Fixed possible Linux guest kernel crash when configuring Speculative Store Bypass for a single vCPU VM
  GUI: In the storage page of the virtual machine settings dialog, fixed a bug which disrupted mouse interaction with the native file selector on KDE
  NAT: Prevent issue when host resolver incorrectly returned NXDOMAIN for unsupported queries (bug #20977)
  Audio: General improvements in saved state area
  Recording: Various fixes for settings handling
  VGA: Performance improvements for screen updates when VBE banking is used
  USB: Fixed rare crashes when detaching a USB device
  ATA: Fixed NT4 guests taking a minute to eject CDs
  vboximg-mount: Fixed broken write support (bug #20896)
  SDK: Fixed Python bindings incorrectly trying to convert arbitrary byte data into unicode objects with Python 3, causing exceptions (bug #19740)
  API: Fixed an issue when virtual USB mass storage devices or virtual USB DVD drives are added while the VM is not running are by default not marked as hot-pluggable
  API: Initial support for Python 3.10
  API: Solaris OS types cleanup
  Linux and Solaris hosts: Allow to mount shared folder if it is represented as a symlink on a host side (bug #17491)
  Linux Host and Guest drivers: Introduced initial support for kernels 5.18, 5.19 and RHEL 9.1 (bugs #20914, #20941)
  Linux Host and Guest drivers: Better support for kernels built with clang compiler (bugs #20425 and #20998)
  Solaris Guest Additions: General improvements in installer area
  Solaris Guest Additions: Fixed guest screen resize in VMSVGA graphics configuration
  Linux and Solaris Guest Additions: Fixed multi-screen handling in VBoxVGA and VBoxSVGA graphics configuration
  Linux and Solaris Guest Additions: Added support for setting primary screen via VBoxManage
  Linux and Solaris Guest Additions: Fixed X11 resources leak when resizing guest screens
  Linux and Solaris Guest Additions: Fixed file descriptor leak when starting a process using guest control (bug #20902)
  Linux and Solaris Guest Additions: Fixed guest control executing processes as root
  Linux Guest Additions: Improved guests booting time by preventing kernel modules from being rebuilt when it is not necessary (bug #20502)
  Windows Guest Additions: Fixed VBoxTray crash on startup in NT4 guests on rare circumstances
  deleted file "fixes_for_kernel_5.18.patch" - fixed upstream.
  Fixes CVE-2022-21571) VUL-0: CVE-2022-21571,CVE-2022-21554 - boo#1201720

OBS-URL: https://build.opensuse.org/request/show/990809
OBS-URL: https://build.opensuse.org/package/show/Virtualization/virtualbox?expand=0&rev=648
2022-07-23 14:10:28 +00:00

251 lines
9.6 KiB
Diff

Index: VirtualBox-6.1.36/src/VBox/Additions/linux/installer/vboxadd.sh
===================================================================
--- VirtualBox-6.1.36.orig/src/VBox/Additions/linux/installer/vboxadd.sh
+++ VirtualBox-6.1.36/src/VBox/Additions/linux/installer/vboxadd.sh
@@ -26,11 +26,14 @@
# Provides: vboxadd
# Required-Start:
# Required-Stop:
-# Default-Start: 2 3 4 5
+# Should-Start: $remote_fs
+# Should-Stop: $remote_fs
+# Default-Start: 2 3 5
# Default-Stop: 0 1 6
# X-Start-Before: display-manager
# X-Service-Type: oneshot
# Description: VirtualBox Linux Additions kernel modules
+# Short-Description: VirtualBox Linux Additions kernel modules
### END INIT INFO
## @todo This file duplicates a lot of script with vboxdrv.sh. When making
@@ -121,20 +124,11 @@ module_build_log()
dev=/dev/vboxguest
userdev=/dev/vboxuser
-config=/var/lib/VBoxGuestAdditions/config
owner=vboxadd
group=1
-if test -r $config; then
- . $config
-else
- fail "Configuration file $config not found"
-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"
-
# Attempt to detect VirtualBox Guest Additions version and revision information.
VBOXCLIENT="${INSTALL_DIR}/bin/VBoxClient"
VBOX_VERSION="`"$VBOXCLIENT" --version | cut -d r -f1`"
@@ -184,12 +178,6 @@ do_vboxguest_non_udev()
fail "Cannot create device $dev with major $maj and minor $min"
}
fi
- chown $owner:$group $dev 2>/dev/null || {
- rm -f $dev 2>/dev/null
- rm -f $userdev 2>/dev/null
- rmmod vboxguest 2>/dev/null
- fail "Cannot change owner $owner:$group for device $dev"
- }
if [ ! -c $userdev ]; then
maj=10
@@ -200,12 +188,6 @@ do_vboxguest_non_udev()
rmmod vboxguest 2>/dev/null
fail "Cannot create device $userdev with major $maj and minor $min"
}
- chown $owner:$group $userdev 2>/dev/null || {
- rm -f $dev 2>/dev/null
- rm -f $userdev 2>/dev/null
- rmmod vboxguest 2>/dev/null
- fail "Cannot change owner $owner:$group for device $userdev"
- }
fi
fi
}
@@ -267,7 +249,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
@@ -376,9 +358,9 @@ create_udev_rule()
udevcontrol reload_rules >/dev/null 2>&1 || true
fi
}
-
-create_module_rebuild_script()
-{
+ # And an rc file to re-build the kernel modules and re-set-up the X server.
+ ln -sf "$lib_path/$PACKAGE/vboxadd" /sbin/rcvboxadd
+ #ln -sf "$lib_path/$PACKAGE/vboxadd-x11" /sbin/rcvboxadd-x11
# And a post-installation script for rebuilding modules when a new kernel
# is installed.
mkdir -p /etc/kernel/postinst.d /etc/kernel/prerm.d
@@ -497,25 +479,18 @@ setup()
chcon -t bin_t "$BUILDINTMP" 2>/dev/null
if test -z "$INSTALL_NO_MODULE_BUILDS"; then
- # Check whether modules setup is already complete for currently running kernel.
- # Prevent unnecessary rebuilding in order to speed up booting process.
- if test "$(setup_complete)" = "1"; then
- info "VirtualBox Guest Additions kernel modules $VBOX_VERSION $VBOX_REVISION are"
- info "already available for kernel $TARGET_VER and do not require to be rebuilt."
+ 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 "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. \
+ info "Kernel headers not found for target kernel $TARGET_VER. \
Please install them and execute
/sbin/rcvboxadd setup"
- fi
fi
fi
create_vbox_user
@@ -529,17 +504,14 @@ Please install them and execute
# 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
+ succ_msg
}
# cleanup_script
cleanup()
{
- if test -z "${INSTALL_NO_MODULE_BUILDS}"; then
- # Delete old versions of VBox modules.
- cleanup_modules
+ # Delete old versions of VBox modules.
+ cleanup_modules
depmod
# Remove old module sources
@@ -549,12 +521,13 @@ cleanup()
fi
# Clean-up X11-related bits
- "${INSTALL_DIR}/init/vboxadd-x11" cleanup
+ #/sbin/rcvboxadd-x11 cleanup
# 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 || 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 || true
fi
rm -f /sbin/mount.vboxsf 2>/dev/null
rm -f /etc/udev/rules.d/60-vboxadd.rules 2>/dev/null
@@ -587,7 +560,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.1.36/src/VBox/Additions/linux/installer/vboxadd-service.sh
===================================================================
--- VirtualBox-6.1.36.orig/src/VBox/Additions/linux/installer/vboxadd-service.sh
+++ VirtualBox-6.1.36/src/VBox/Additions/linux/installer/vboxadd-service.sh
@@ -26,7 +26,7 @@
# Provides: vboxadd-service
# Required-Start: vboxadd
# Required-Stop: vboxadd
-# Default-Start: 2 3 4 5
+# Default-Start: 2 3 5
# Default-Stop: 0 1 6
# X-Conflicts-With: systemd-timesyncd.service
# Description: VirtualBox Additions Service
Index: VirtualBox-6.1.36/src/VBox/Installer/linux/vboxautostart-service.sh
===================================================================
--- VirtualBox-6.1.36.orig/src/VBox/Installer/linux/vboxautostart-service.sh
+++ VirtualBox-6.1.36/src/VBox/Installer/linux/vboxautostart-service.sh
@@ -23,7 +23,7 @@
# Provides: vboxautostart-service
# Required-Start: vboxdrv
# Required-Stop: vboxdrv
-# Default-Start: 2 3 4 5
+# Default-Start: 2 3 5
# Default-Stop: 0 1 6
# Description: VirtualBox autostart service
### END INIT INFO
Index: VirtualBox-6.1.36/src/VBox/Installer/linux/vboxballoonctrl-service.sh
===================================================================
--- VirtualBox-6.1.36.orig/src/VBox/Installer/linux/vboxballoonctrl-service.sh
+++ VirtualBox-6.1.36/src/VBox/Installer/linux/vboxballoonctrl-service.sh
@@ -23,7 +23,7 @@
# Provides: vboxballoonctrl-service
# Required-Start: vboxdrv
# Required-Stop: vboxdrv
-# Default-Start: 2 3 4 5
+# Default-Start: 2 3 5
# Default-Stop: 0 1 6
# Description: VirtualBox watchdog daemon
### END INIT INFO
Index: VirtualBox-6.1.36/src/VBox/ValidationKit/testboxscript/linux/testboxscript-service.sh
===================================================================
--- VirtualBox-6.1.36.orig/src/VBox/ValidationKit/testboxscript/linux/testboxscript-service.sh
+++ VirtualBox-6.1.36/src/VBox/ValidationKit/testboxscript/linux/testboxscript-service.sh
@@ -31,7 +31,7 @@
# Provides: testboxscript-service
# Required-Start: $network
# Required-Stop:
-# Default-Start: 2 3 4 5
+# Default-Start: 2 3 5
# Default-Stop: 0 1 6
# Description: TestBoxScript service
### END INIT INFO
Index: VirtualBox-6.1.36/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs-nat.sh
===================================================================
--- VirtualBox-6.1.36.orig/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs-nat.sh
+++ VirtualBox-6.1.36/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs-nat.sh
@@ -31,7 +31,7 @@
# Provides: vboxtxs
# Required-Start: $network
# Required-Stop:
-# Default-Start: 2 3 4 5
+# Default-Start: 2 3 5
# Default-Stop: 0 1 6
# Description: VirtualBox Test Execution Service
### END INIT INFO
Index: VirtualBox-6.1.36/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs.sh
===================================================================
--- VirtualBox-6.1.36.orig/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs.sh
+++ VirtualBox-6.1.36/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs.sh
@@ -31,7 +31,7 @@
# Provides: vboxtxs
# Required-Start: $network
# Required-Stop:
-# Default-Start: 2 3 4 5
+# Default-Start: 2 3 5
# Default-Stop: 0 1 6
# Description: VirtualBox Test Execution Service
### END INIT INFO