c58f1213e628a545081c70e26c6b67a841cff880vboxsync# Copyright (C) 2006-2012 Oracle Corporation
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# This file is part of VirtualBox Open Source Edition (OSE), as
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# available from http://www.virtualbox.org. This file is free software;
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# you can redistribute it and/or modify it under the terms of the GNU
d63de4508a08b11f57c307a15eda3cd95485bf2cvboxsync# General Public License (GPL) as published by the Free Software
d63de4508a08b11f57c307a15eda3cd95485bf2cvboxsync# Foundation, in version 2 as it comes in the "COPYING" file of the
d63de4508a08b11f57c307a15eda3cd95485bf2cvboxsync# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
d63de4508a08b11f57c307a15eda3cd95485bf2cvboxsync# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# we can be called with the following arguments (6.5 of Debian policy):
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# install: (our version): install our version
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# upgrade: (our version): upgrade to our version
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# abort-upgrade: (old version): upgrade to a new version failed
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync[ -r /etc/default/virtualbox ] && . /etc/default/virtualbox
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync # check for active VMs
cf5af7fccfec4bef83f4ec21662d6a6e6cbe3835vboxsync if [ -n "$VBOXSVC_PID" ]; then
17d67aeb3722c094c6493a3e9a9d0cdfb9453ecdvboxsync if [ -f /etc/init.d/vboxballoonctrl-service ]; then
17d67aeb3722c094c6493a3e9a9d0cdfb9453ecdvboxsync # try graceful termination; terminate the ballon control service first
6c9bd83255788d5e4a101dd05184a09175c0b52dvboxsync # try graceful termination; terminate the webservice first
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync # check for old installation
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync if [ "x$INSTALL_DIR" != "x" -a -d "$INSTALL_DIR" ]; then
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync db_fset virtualbox/old-installation-found seen false || true
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync db_input critical virtualbox/old-installation-found || true
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync # we will remove that file in postinst
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync # check for old vboxdrv modules
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync if find /lib/modules -name "vboxdrv\.*" 2>/dev/null|grep -q vboxdrv; then
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync # old modules found
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsyncOld vboxdrv kernel modules found in
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync find /lib/modules -name "vboxdrv\.*" 2>/dev/null|sed "s+\(.*\)+ \1+g"
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsyncRemoving of these modules denied by debconf setting
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync find /lib/modules -name "vboxdrv\.*" 2>/dev/null|xargs rm -f 2>/dev/null
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync find /lib/modules -name "vboxnetflt\.*" 2>/dev/null|xargs rm -f 2>/dev/null
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync find /lib/modules -name "vboxnetadp\.*" 2>/dev/null|xargs rm -f 2>/dev/null
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsyncfi # "$1" = "install" -o "$1" = "upgrade"