Hello community,

here is the log from the commit of package virtualbox.1250 for 
openSUSE:12.2:Update checked in at 2013-02-04 13:52:38
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:12.2:Update/virtualbox.1250 (Old)
 and      /work/SRC/openSUSE:12.2:Update/.virtualbox.1250.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "virtualbox.1250", Maintainer is ""

Changes:
--------
New Changes file:

--- /dev/null   2013-01-09 19:40:42.352580873 +0100
+++ /work/SRC/openSUSE:12.2:Update/.virtualbox.1250.new/virtualbox.changes      
2013-02-04 13:52:42.000000000 +0100
@@ -0,0 +1,2833 @@
+-------------------------------------------------------------------
+Thu Jan 17 10:25:05 UTC 2013 - [email protected]
+
+- added CVE-2013-0420.diff to fix CVE-2013-0420 (bnc#798776)
+
+-------------------------------------------------------------------
+Fri Sep 21 18:46:29 UTC 2012 - [email protected]
+
+- update to virtualbox 4.1.22 (fix bnc#780711 VUL-1)
+ * VMM: fixed a potential host crash triggered by shutting down a VM when 
another VM was running 
+ * VMM: fixed a potential host crash under a high guest memory pressure (seen 
with Windows 8 guests)
+ * VMM: respect RAM preallocation while restoring saved state.
+ * VMM: fixed handling of task gates if VT-x/AMD-V is disabled
+ * Storage: fixed audio CD passthrough for certain media players
+ * USB: don't crash if a USB device is plugged or unplugged when saving or 
loading the VM state (SMP guests only)
+ * RTC: fixed a potential corruption of CMOS bank 1
+ * Mac OS X hosts: installer fixes for Leopard (4.1.20 regression)
+ * Windows Additions: fixed memory leak in VBoxTray (bug #10808)
+- changes in virtualbox 4.1.20 (maintenance release)
+ * VMM: fixed a crash under rare circumstances for VMs running without 
hardware virtualization
+ * VMM: fixed a code analysis bug for certain displacement instructions for 
VMs running without hardware virtualization
+ * VMM: fixed an interpretion bug for TPR read instructions under rare 
conditions (AMD-V only)
+ * Snapshots: fixed a crash when restoring an old snapshot when powering off a 
VM (bugs #9604, #10491)
+ * VBoxSVC: be more tolerant against environment variables with strange 
encodings (bug #8780)
+ * VGA: fixed wrong access check which might cause a crash under certain 
conditions
+ * NAT: final fix for crashes under rare conditions (bug #10513)
+ * Virtio-net: fixed the problem with receiving of GSO packets in Windows XP 
guests causing packet loss in host-to-VM transfers
+ * HPET: several fixes (bugs #10170, #10306)
+ * Clipboard: disable the clipboard by default for new VMs
+ * BIOS: the PCI BIOS was not properly detected with the chipset type set to 
ICH9 (bugs #9301, #10327)
+ * Mac OS X hosts: adaptions to Mountain Lion
+ * Linux Installer: fixes for Gentoo Linux (bug #10642)
+ * Linux guests: fixed mouse integration on Fedora 17 guests (bug #2306)
+ * Linux Additions: compile fixes for RHEL/CentOS 6.3 (bug #10756)
+ * Linux Additions: compile fixes for Linux 3.5-rc1 and Linux 3.6-rc1 (bug 
#10709)
+ * Solaris host: fixed a guru meditation while allocating large pages (bug 
#10600)
+ * Solaris host: fixed possible kernel panics while freeing memory
+ * Solaris Installer: fixed missing icon for menu and desktop shortcuts
+- added patch vbox-LIBVNCSERVER_IPv6.diff to fix build
+
+-------------------------------------------------------------------
+Tue Jun 26 14:02:32 UTC 2012 - [email protected]
+
+- let it build with all versions of openjkd
+
+-------------------------------------------------------------------
+Thu Jun 21 20:01:20 UTC 2012 - [email protected]
+
+- update to virtualbox 4.1.18 (This is a maintenance release) 
+* VMM: fixed VERR_REM_VIRTUAL_CPU_ERROR under rare conditions after the guest 
has been reset (bug #5164 and others)
+* VMM: fixed host freezes with 64-bit guests on 32-bit Linux hosts (bug #10528)
+* VRDP: added a workaround for rdesktop clients not properly updating the 
screen size when minimized
+* AHCI: fixed a rare bug which can cause a guest memory corruption after the 
guest storage controler has been reset
+* NAT: another attempt to fix crashes under rare conditions (Windows hosts 
only; bug #10513)
+* Mac OS X hosts: addressed issues running Leopard / Snow Leopard (bug #10631)
+* Linux hosts / Bridged Networking: fixed the problem with device driver 
unloading on kernels 3.2.18 and newer due to an invalid reference counter (bug 
#10624)
+* Linux hosts / guests: Linux 3.5-rc1 fixes
+* Linux Additions: the guest content was sometimes not properly updated (bug 
#9887)
+* Solaris Additions: installer fix for X.org Server 1.11 and 1.12
+
+-------------------------------------------------------------------
+Fri Jun  1 20:00:15 UTC 2012 - [email protected]
+
+- use proper version of vboxvideo xorg driver (vboxvideo_drv_112)
+  for 12.2 release 
+- adjust udev rules for vboxuser device on guest machine (file 
virtualbox-60-vboxguest.rules)
+
+-------------------------------------------------------------------
+Thu May 24 08:37:37 UTC 2012 - [email protected]
+
+- update to virtualbox 4.1.16 (This is a maintenance release)
+* VMM: fixed a Guru Meditation VERR_ACCESS_DENIED with certain guests (bugs 
#7589, #8247)
+* VMM: fixed a Guru Meditation VERR_PAGE_TABLE_NOT_PRESENT with Ubuntu 32-bit 
guests with nested paging enabled on AMD CPUs (bug #10183)
+* VMM: preserve segment limits and attributes when switching to unreal mode 
required for some legacy guests to work properly (VT-x without unrestricted 
guest execution only; bug #9941)
+* VMM: fixed a VM hang after a resume from pause / savestate with SMP guests 
in rare cases
+* 3D Support: several fixes for the Windows WDDM video driver crash
+* NAT: fixed a crash on attempt to process ICMP datagram under some 
circumstances (bug #10527)
+* Host-only Networking: lifted the maximal number of interfaces to 128 on 
Linux and Mac OS X hosts (there is no such limitation for Solaris and Windows 
hosts)
+* EFI: fixed wrong SEC/PEI Core entry point calculation (bug #10531)
+* VRDP: fixed a display update problem (bug #10503)
+* Main: set the proper VM state if savestate failed for some reason (bug #6189)
+* Main: more useful error message if a medium is inaccessible
+* VBoxManage: fixed controlvm savestate if the VM is already paused
+* Mac OS X hosts: addressed issues running on Mountain Lion Preview 3 (bug 
#10267)
+* Linux hosts: Linux 3.4 compile fixes
+* Linux hosts: fixed wrong help path in some rpm-based packages (bug #10418)
+* Guest Additions: fixed handling of custom environment variables during 
VBoxManage guestcontrol execute (bug #10581)
+* Windows Additions: fixed guest driver crash of VBoxSF in certain cases 
(4.1.10 regression, bug #10408)
+* Windows Additions: don't load the WDDM driver if 3D support is not available 
for Windows 8 guests to keep the guest maintainable in that case (still better 
to miss some features than providing a blank screen)
+* Solaris Additions: added support for X.org Server 1.11 and 1.12
+
+-------------------------------------------------------------------
+Tue May 15 12:16:30 UTC 2012 - [email protected]
+
+- modify vboxadd-init-script.diff to fix issues with missing 
+  config file on guest [bnc#761923]
+
+-------------------------------------------------------------------
+Sun Apr 29 16:02:54 UTC 2012 - [email protected]
+
+- use workaround for issue with kmk_sed and gcc4.7 
http://svn.netlabs.org/kbuild/ticket/112,
+  which breaks build, instead of kmk_sed use /usr/bin/sed
+
+-------------------------------------------------------------------
+Sat Apr 28 19:38:57 UTC 2012 - [email protected]
+
+- update to virtualbox 4.1.14 (This is a maintenance release):
+  * Network: fixed the problem with packets larger than MTU-4 when PCnet or 
PRO/1000 was bridged to certain types of adapters on OS X hosts (bug #3783)
+  * NAT: fixed a segfault under rare circumstances
+  * 3D Support: fixed Windows WDDM video driver crash for SMP guests (bugs 
#10200, #10331)
+  * Windows Guest Additions, VRDP: fixed occasional text corruption (bug #3001)
+
+-------------------------------------------------------------------
+Sat Apr 21 10:25:41 UTC 2012 - [email protected]
+
+- drop vbox-config.diff and use LocalConfig.kmk to properly define 
+  lib,app and doc paths (bnc#737525)
+
+-------------------------------------------------------------------
+Wed Apr  4 09:21:39 UTC 2012 - [email protected]
+
+- deprecated vbox-visibility.diff and vbox-gsoap_ssl.diff
+- update to virtualbox 4.1.12 (This is a maintenance release):
+ * VMM: fixed VERR_NOT_SUPPORTED and VERR_RAW_MODE_INVALID_SMP guru meditation 
due to an invalid reschedule to raw mode (bug #10370)
+ * VMM: fixed PDMCritSectLeave guru meditation under rare circumstances with 
SMP guests
+ * VMM: proper Math Fault handling with certain legacy guests (bug #9042)
+ * NAT: fixed a socket leak under certain conditions
+ * Storage: better sanity check against reading beyond end-of-file
+ * Audio: fixed a crash in the NUL audio backend (bug #10374; 4.1.10 
regression)
+ * HGCM: fixed a crash during savestate under rare circumstances
+ * VBoxSVC: several locking fixes
+ * VBoxManage: return the correct error code if controlvm savestate failed 
(bug #10134)
+ * Guest Additions: VBoxService should not crash on exit (bug #10326; 4.1.10 
regression)
+ * Windows Additions: set the correct time stamp when a file is closed (bug 
#6473)
+ * Windows Additions: better help if the DirectX backups are not properly 
installed
+ * Linux Additions: Linux 3.4-rc1 compile fixes 
+
+-------------------------------------------------------------------
+Sun Apr  1 05:48:40 UTC 2012 - [email protected]
+
+- added vbox-gsoap_ssl.diff to fix building websrv with ssl support
+- drop deprecated kernel-3.3.patch
+- update to virtualbox 4.1.10 (This is a maintenance release):
+ * GUI: if 3D support on the host is not available for some reason, do not 
only disable this VM setting but also uncheck the checkbox
+ * VMM: fixed a potential problem causing to schedule interrupts during 
SYSEXIT right after STI
+ * VMM: fixed a potential guest memory corruption issue with page fusion
+ * VMM: adjusted the module matching algorithm for page fusion a little, 
generally resulting in slightly more shared pages
+ * Main: host interfaces no longer have "defaults" for IP address and network 
mask attributes
+ * Main: don't depend on a password for certain guest control operations (bug 
#10030)
+ * 3D Support: fixed Windows XP hosts support (4.1.8 regression; bugs #10071 
and #10088)
+ * 3D Support: rendering fixes for Linux hosts with NVIDIA graphics
+ * 3D Support: fixed saved state issues (4.1.8 regression; bug #10126)
+ * 3D Support: WDDM driver: fixed powershell_ise crashes (bug #10167), make 
WPF-based apps work with Aero enabled, fixed additional possible WinSAT crashes
+ * VRDP: fixed remote clipboard compatibility issues with some clients
+ * Storage: fixed a possible data corruption when compacting VDI or VHD images 
with snapshots (32-bit hosts only)
+ * iSCSI: fixed crash when using incorrect credentials when authenticating 
with a LIO target (bug #10173)
+ * Serial: don't abort in host mode under rare error conditions (non-Windows 
hosts only)
+ * SDK: actually ship current C bindings
+ * SDK: fixed the Java glue code for JDK 1.7.0 (bug #9848)
+ * SDK: added Python example
+ * Metrics: make metrics collection more robust regarding blocked VMs
+ * Web service: added SSL/TLS support
+ * VBoxShell: fixed Guest Additions information lookup
+ * Solaris installer: fixed dependency checking while installing VirtualBox in 
a zone
+ * Linux hosts/guests: Linux 3.3-rc1 compile fixes
+ * Solaris hosts: fixed debug kernel panics while opening module CTF data (bug 
#9651)
+ * Mac OS X hosts: fixed Python support on Lion
+ * Linux Additions: make 3D passthrough work on OL/RHEL 6.2 (bug #10010)
+ * Linux Additions: fixed missing implementation when copying shared folder 
data through kernel high memory (bug #9878)
+ * Linux Additions: make sure all data is written when closing a memory mapped 
file on a shared folder
+ * Linux Additions: added support for X.Org Server 1.12
+ * Solaris Additions: fixed guest kernel driver to load properly on guest 
reboot (4.1.8 regression; bug #10113)
+ * Solaris Additions: fixed missing 64-bit OpenGL library VBoxOGL.so (bug 
#10151)
+ * Solaris Additions: fixed VBoxService import and start for Solaris 11 guests.
+ * Windows Additions: some Windows 8 adaptions
+ * Windows Additions: several fixes for shared folders (bug #9753)
+ * Guest control: miscellaneous bugfixes 
+
+-------------------------------------------------------------------
+Sun Mar 18 08:18:34 UTC 2012 - [email protected]
+
+- use pie/fPIE for setuid binaries (vbox-fpie.diff) (bnc#743143) 
+- clean up virtualbox-60-vboxdrv.rules and use fillup_only for vbox sysconfig 
file
+- added vbox-vboxweb-init-script.diff to use proper pid file and runlevels in 
vboxweb initscript
+
+-------------------------------------------------------------------
+Wed Mar 14 20:45:06 UTC 2012 - [email protected]
+
+- enabled websrv feature, this feature is now provided by new subpackage 
virtualbox-websrv
+- added vbox-visibility.diff to fix websrv build (ommit -fvisibility=hidden 
gcc flag for gsoap related builds)
+
+-------------------------------------------------------------------
+Thu Mar  8 15:16:01 UTC 2012 - [email protected]
+
+- Drop unnecessary xorg-x11-libs-32bit buildrequires
+- Fix build with linux kernel 3.3 
+
++++ 2636 more lines (skipped)
++++ between /dev/null
++++ and /work/SRC/openSUSE:12.2:Update/.virtualbox.1250.new/virtualbox.changes

New:
----
  CVE-2013-0420.diff
  VirtualBox-4.1.22-patched.tar.bz2
  vbox-LIBVNCSERVER_IPv6.diff
  vbox-default-os-type.diff
  vbox-disable-updates.diff
  vbox-fpie.diff
  vbox-no-build-dates.diff
  vbox-permissions_warning.diff
  vbox-python-detection.diff
  vbox-ret-in-nonvoid-fnc.diff
  vbox-smc-napa.diff
  vbox-vboxadd-init-script.diff
  vbox-vboxdrv-init-script.diff
  vbox-vboxweb-init-script.diff
  virtualbox-4.1.22-UserManual.pdf
  virtualbox-4.1.22-rpmlintrc
  virtualbox-60-vboxdrv.rules
  virtualbox-60-vboxguest.rules
  virtualbox-LocalConfig.kmk
  virtualbox-default.virtualbox
  virtualbox-guest-kmp-files
  virtualbox-guest-preamble
  virtualbox-host-kmp-files
  virtualbox-host-preamble
  virtualbox-patch-source.sh
  virtualbox-sysconfig.vbox
  virtualbox-vboxes
  virtualbox-wrapper.sh
  virtualbox.changes
  virtualbox.spec

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ virtualbox.spec ++++++
++++ 818 lines (skipped)

++++++ CVE-2013-0420.diff ++++++
Index: VirtualBox-4.1.22/src/VBox/Devices/Graphics/DevVGA.cpp
===================================================================
--- VirtualBox-4.1.22.orig/src/VBox/Devices/Graphics/DevVGA.cpp
+++ VirtualBox-4.1.22/src/VBox/Devices/Graphics/DevVGA.cpp
@@ -1795,7 +1795,7 @@ static int vga_draw_text(VGAState *s, in
     cx_max_upd = -1;
     cx_min_upd = width;
 
-    for(cy = 0; cy < height; cy = cy + (1 << dscan)) {
+    for(cy = 0; cy < (height - dscan); cy = cy + (1 << dscan)) {
         d1 = dest;
         src = s1;
         cx_min = width;
++++++ vbox-LIBVNCSERVER_IPv6.diff ++++++
Index: VirtualBox-4.1.22/src/VBox/Frontends/VBoxHeadless/FramebufferVNC.cpp
===================================================================
--- VirtualBox-4.1.22/src/VBox/Frontends/VBoxHeadless/FramebufferVNC.cpp
+++ VirtualBox-4.1.22/src/VBox/Frontends/VBoxHeadless/FramebufferVNC.cpp
@@ -91,9 +91,6 @@ HRESULT VNCFB::init(const char *pszName)
     if (mVncPort)
     {
         vncServer->port = mVncPort;
-#ifdef LIBVNCSERVER_IPv6
-        vncServer->ipv6port = mVncPort;
-#endif
     }
     char *pszDesktopName;
     rc = RTStrAPrintf(&pszDesktopName, "%s - VirtualBox", pszName);
++++++ vbox-default-os-type.diff ++++++
--- src/VBox/Frontends/VirtualBox/src/widgets/VBoxOSTypeSelectorWidget.cpp.orig 
2010-11-10 21:27:23.000000000 +0100
+++ src/VBox/Frontends/VirtualBox/src/widgets/VBoxOSTypeSelectorWidget.cpp      
2010-11-10 21:27:53.000000000 +0100
@@ -199,10 +199,10 @@
         if (xpIndex != -1)
             mCbType->setCurrentIndex (xpIndex);
     }
-    /* Or select Ubuntu item for Linux family as default */
+    /* Or select openSUSE item for Linux family as default */
     else if (familyId == "Linux")
     {
-        int ubIndex = mCbType->findData ("Ubuntu", RoleTypeID);
+        int ubIndex = mCbType->findData ("OpenSUSE", RoleTypeID);
         if (ubIndex != -1)
             mCbType->setCurrentIndex (ubIndex);
     }
++++++ vbox-disable-updates.diff ++++++
--- src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsUpdate.cpp
+++ src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsUpdate.cpp
@@ -63,7 +63,7 @@ void UIGlobalSettingsUpdate::loadToCache
 void UIGlobalSettingsUpdate::getFromCache()
 {
     /* Apply internal variables data to QWidget(s): */
-    m_pEnableUpdateCheckbox->setChecked(m_cache.m_fCheckEnabled);
+    m_pEnableUpdateCheckbox->setChecked(false);
     if (m_pEnableUpdateCheckbox->isChecked())
     {
         m_pUpdatePeriodCombo->setCurrentIndex(m_cache.m_periodIndex);
--- src/VBox/Frontends/VirtualBox/src/settings/UISettingsDialogSpecific.h
+++ src/VBox/Frontends/VirtualBox/src/settings/UISettingsDialogSpecific.h
@@ -34,7 +34,6 @@ public:
     {
         GLSettingsPage_General = 0,
         GLSettingsPage_Input,
-        GLSettingsPage_Update,
         GLSettingsPage_Language,
         GLSettingsPage_USB,
         GLSettingsPage_Network,
--- src/VBox/Frontends/VirtualBox/src/settings/UISettingsDialogSpecific.cpp
+++ src/VBox/Frontends/VirtualBox/src/settings/UISettingsDialogSpecific.cpp
@@ -340,15 +340,6 @@ UISettingsDialogGlobal::UISettingsDialog
                             iPageIndex, "#input", pSettingsPage);
                     break;
                 }
-                /* Update page: */
-                case GLSettingsPage_Update:
-                {
-                    pSettingsPage = new UIGlobalSettingsUpdate;
-                    addItem(":/refresh_32px.png", 
":/refresh_disabled_32px.png",
-                            ":/refresh_16px.png", 
":/refresh_disabled_16px.png",
-                            iPageIndex, "#update", pSettingsPage);
-                    break;
-                }
                 /* Language page: */
                 case GLSettingsPage_Language:
                 {
@@ -481,9 +472,6 @@ void UISettingsDialogGlobal::retranslate
     /* Input page: */
     m_pSelector->setItemText(GLSettingsPage_Input, tr("Input"));
 
-    /* Update page: */
-    m_pSelector->setItemText(GLSettingsPage_Update, tr("Update"));
-
     /* Language page: */
     m_pSelector->setItemText(GLSettingsPage_Language, tr("Language"));
 
++++++ vbox-fpie.diff ++++++
Index: VirtualBox-4.1.8_OSE/Config.kmk
===================================================================
--- VirtualBox-4.1.8_OSE.orig/Config.kmk
+++ VirtualBox-4.1.8_OSE/Config.kmk
@@ -3368,10 +3368,13 @@ TEMPLATE_VBOXR3HARDENEDEXE_LDFLAGS.darwi
 ifeq ($(KBUILD_TARGET),linux)
 # not necessary except USE_LIB_PCAP is defined in SUPR3HardenedMain.cpp
 # TEMPLATE_VBOXR3HARDENEDEXE_LIBS += cap
+ TEMPLATE_VBOXR3HARDENEDEXE_CXXFLAGS.linux = 
$(TEMPLATE_VBOXR3EXE_CXXFLAGS.linux) -fPIE
+ TEMPLATE_VBOXR3HARDENEDEXE_CFLAGS.linux = $(TEMPLATE_VBOXR3EXE_CFLAGS.linux) 
-fPIE
+ TEMPLATE_VBOXR3HARDENEDEXE_LDFLAGS.linux = 
$(TEMPLATE_VBOXR3EXE_LDFLAGS.linux) -pie
 endif
 ifn1of ($(KBUILD_TARGET), win os2)
- TEMPLATE_VBOXR3HARDENEDEXE_LDFLAGS       = $(filter-out 
'$(VBOX_GCC_RPATH_OPT)%,$(TEMPLATE_VBOXR3EXE_LDFLAGS))
- TEMPLATE_VBOXR3HARDENEDEXE_LDFLAGS.linux = $(filter-out 
$(VBOX_GCC_ORIGIN_OPT),$(TEMPLATE_VBOXR3EXE_LDFLAGS.linux))
+ TEMPLATE_VBOXR3HARDENEDEXE_LDFLAGS       = $(filter-out 
'$(VBOX_GCC_RPATH_OPT)%,$(TEMPLATE_VBOXR3EXE_LDFLAGS)) -pie
+ TEMPLATE_VBOXR3HARDENEDEXE_LDFLAGS.linux = $(filter-out 
$(VBOX_GCC_ORIGIN_OPT),$(TEMPLATE_VBOXR3EXE_LDFLAGS.linux)) -pie
 endif
 
 #
++++++ vbox-no-build-dates.diff ++++++
Index: src/VBox/Frontends/VBoxBFE/VBoxBFE.cpp
===================================================================
--- src/VBox/Frontends/VBoxBFE/VBoxBFE.cpp.orig
+++ src/VBox/Frontends/VBoxBFE/VBoxBFE.cpp
@@ -388,7 +388,7 @@ extern "C" DECLEXPORT(int) TrustedMain (
 #endif
     int rc = VINF_SUCCESS;
 
-    RTPrintf(VBOX_PRODUCT " Simple SDL GUI built %s %s\n", __DATE__, __TIME__);
+    RTPrintf(VBOX_PRODUCT " Simple SDL GUI\n");
 
     // less than one parameter is not possible
     if (argc < 2)
@@ -1051,10 +1051,9 @@ DECLCALLBACK(int) VMPowerUpThread(RTTHRE
             char szNowUct[64];
             RTTimeSpecToString(RTTimeNow(&TimeSpec), szNowUct, 
sizeof(szNowUct));
             RTLogRelLogger(pLogger, 0, ~0U,
-                           "VBoxBFE %s (%s %s) release log\n"
+                           "VBoxBFE %s release log\n"
                            "Log opened %s\n",
-                           VBOX_VERSION_STRING, __DATE__, __TIME__,
-                           szNowUct);
+                           VBOX_VERSION_STRING, szNowUct);
 
             /* register this logger as the release logger */
             RTLogRelSetDefaultInstance(pLogger);
Index: src/VBox/Main/src-client/ConsoleImpl.cpp
===================================================================
--- src/VBox/Main/src-client/ConsoleImpl.cpp.orig
+++ src/VBox/Main/src-client/ConsoleImpl.cpp
@@ -6146,13 +6146,13 @@ HRESULT Console::consoleInitReleaseLog(c
         char szTmp[256];
         RTTimeSpecToString(RTTimeNow(&timeSpec), szTmp, sizeof(szTmp));
         RTLogRelLogger(pReleaseLogger, 0, ~0U,
-                       "VirtualBox %s r%u %s (%s %s) release log\n"
+                       "VirtualBox %s r%u %s release log\n"
 #ifdef VBOX_BLEEDING_EDGE
                        "EXPERIMENTAL build " VBOX_BLEEDING_EDGE "\n"
 #endif
                        "Log opened %s\n",
                        VBOX_VERSION_STRING, RTBldCfgRevision(), 
VBOX_BUILD_TARGET,
-                       __DATE__, __TIME__, szTmp);
+                       szTmp);
 
         vrc = RTSystemQueryOSInfo(RTSYSOSINFO_PRODUCT, szTmp, sizeof(szTmp));
         if (RT_SUCCESS(vrc) || vrc == VERR_BUFFER_OVERFLOW)
Index: src/VBox/Frontends/VBoxFB/VBoxFB.cpp
===================================================================
--- src/VBox/Frontends/VBoxFB/VBoxFB.cpp.orig
+++ src/VBox/Frontends/VBoxFB/VBoxFB.cpp
@@ -62,7 +62,7 @@ int main(int argc, char *argv[])
 
     printf("VirtualBox DirectFB GUI built %s %s\n"
            "(C) 2004-" VBOX_C_YEAR " " VBOX_VENDOR "\n"
-           "(C) 2004-2005 secunet Security Networks AG\n", __DATE__, __TIME__);
+           "(C) 2004-2005 secunet Security Networks AG\n");
 
     for (;;)
     {
Index: src/VBox/Runtime/common/string/uniread.cpp
===================================================================
--- src/VBox/Runtime/common/string/uniread.cpp.orig
+++ src/VBox/Runtime/common/string/uniread.cpp
@@ -979,7 +979,7 @@ int PrintHeader(const char *argv0)
                   " *\n"
                   " * IPRT - Unicode Tables.\n"
                   " *\n"
-                  " * Automatically Generated by %s (" __DATE__ " " __TIME__ 
")\n"
+                  " * Automatically Generated by %s\n"
                   " */\n"
                   "\n"
                   "/*\n"
Index: src/libs/xpcom18a4/nsprpub/lib/libc/src/plvrsion.c
===================================================================
--- src/libs/xpcom18a4/nsprpub/lib/libc/src/plvrsion.c.orig
+++ src/libs/xpcom18a4/nsprpub/lib/libc/src/plvrsion.c
@@ -42,16 +42,13 @@
 /**************************IDENTITY AND VERSIONING***********************/
 /************************************************************************/
 #include "_pl_bld.h"
-#if !defined(_BUILD_TIME)
-#ifdef HAVE_LONG_LONG
-#define _BUILD_TIME 0
-#else
+
+#undef _BUILD_TIME
 #define _BUILD_TIME {0, 0}
-#endif
-#endif
-#if !defined(_BUILD_STRING)
+
+#undef _BUILD_STRING
 #define _BUILD_STRING ""
-#endif
+
 #if !defined(_PRODUCTION)
 #define _PRODUCTION ""
 #endif
Index: src/libs/xpcom18a4/nsprpub/pr/src/prvrsion.c
===================================================================
--- src/libs/xpcom18a4/nsprpub/pr/src/prvrsion.c.orig
+++ src/libs/xpcom18a4/nsprpub/pr/src/prvrsion.c
@@ -44,16 +44,10 @@
 #ifndef XP_MAC
 #include "_pr_bld.h"
 #endif
-#if !defined(_BUILD_TIME)
-#ifdef HAVE_LONG_LONG
-#define _BUILD_TIME 0
-#else
+#undef _BUILD_TIME
 #define _BUILD_TIME {0, 0}
-#endif
-#endif
-#if !defined(_BUILD_STRING)
+#undef  _BUILD_STRING
 #define _BUILD_STRING ""
-#endif
 #if !defined(_PRODUCTION)
 #define _PRODUCTION ""
 #endif
Index: src/libs/xpcom18a4/nsprpub/lib/prstreams/plvrsion.c
===================================================================
--- src/libs/xpcom18a4/nsprpub/lib/prstreams/plvrsion.c.orig
+++ src/libs/xpcom18a4/nsprpub/lib/prstreams/plvrsion.c
@@ -42,16 +42,13 @@
 /**************************IDENTITY AND VERSIONING***********************/
 /************************************************************************/
 #include "_pl_bld.h"
-#if !defined(_BUILD_TIME)
-#ifdef HAVE_LONG_LONG
-#define _BUILD_TIME 0
-#else
+
+#undef _BUILD_TIME
 #define _BUILD_TIME {0, 0}
-#endif
-#endif
-#if !defined(_BUILD_STRING)
+
+#undef _BUILD_STRING
 #define _BUILD_STRING ""
-#endif
+
 #if !defined(_PRODUCTION)
 #define _PRODUCTION ""
 #endif
Index: src/libs/xpcom18a4/nsprpub/lib/ds/plvrsion.c
===================================================================
--- src/libs/xpcom18a4/nsprpub/lib/ds/plvrsion.c.orig
+++ src/libs/xpcom18a4/nsprpub/lib/ds/plvrsion.c
@@ -42,16 +42,13 @@
 /**************************IDENTITY AND VERSIONING***********************/
 /************************************************************************/
 #include "_pl_bld.h"
-#if !defined(_BUILD_TIME)
-#ifdef HAVE_LONG_LONG
-#define _BUILD_TIME 0
-#else
+
+#undef _BUILD_TIME
 #define _BUILD_TIME {0, 0}
-#endif
-#endif
-#if !defined(_BUILD_STRING)
+
+#undef _BUILD_STRING
 #define _BUILD_STRING ""
-#endif
+
 #if !defined(_PRODUCTION)
 #define _PRODUCTION ""
 #endif
Index: src/VBox/Frontends/VBoxBalloonCtrl/VBoxBalloonCtrl.cpp
===================================================================
--- src/VBox/Frontends/VBoxBalloonCtrl/VBoxBalloonCtrl.cpp.orig
+++ src/VBox/Frontends/VBoxBalloonCtrl/VBoxBalloonCtrl.cpp
@@ -1110,7 +1110,7 @@ static void logHeaderFooter(PRTLOGGER pL
 #endif
                    "Log opened %s\n",
                    VBOX_VERSION_STRING, RTBldCfgRevision(), VBOX_BUILD_TARGET,
-                   __DATE__, __TIME__, szTmp);
+                   "openSUSE", "Buildservice", szTmp);
 
             int vrc = RTSystemQueryOSInfo(RTSYSOSINFO_PRODUCT, szTmp, 
sizeof(szTmp));
             if (RT_SUCCESS(vrc) || vrc == VERR_BUFFER_OVERFLOW)
Index: src/VBox/Main/src-server/Logging.cpp
===================================================================
--- src/VBox/Main/src-server/Logging.cpp.orig
+++ src/VBox/Main/src-server/Logging.cpp
@@ -51,7 +51,7 @@ static void vboxsvcHeaderFooter(PRTLOGGE
 #endif
                    "Log opened %s\n",
                    VBOX_VERSION_STRING, RTBldCfgRevision(), VBOX_BUILD_TARGET,
-                   __DATE__, __TIME__, szTmp);
+                   "openSUSE", "Buildservice", szTmp);
 
             int vrc = RTSystemQueryOSInfo(RTSYSOSINFO_PRODUCT, szTmp, 
sizeof(szTmp));
             if (RT_SUCCESS(vrc) || vrc == VERR_BUFFER_OVERFLOW)
Index: src/VBox/Main/webservice/vboxweb.cpp
===================================================================
--- src/VBox/Main/webservice/vboxweb.cpp.orig
+++ src/VBox/Main/webservice/vboxweb.cpp
@@ -739,7 +739,7 @@ static void WebLogHeaderFooter(PRTLOGGER
 #endif
                    "Log opened %s\n",
                    VBOX_VERSION_STRING, RTBldCfgRevision(), VBOX_BUILD_TARGET,
-                   __DATE__, __TIME__, szTmp);
+                   "openSUSE", "Buildservice", szTmp);
 
             int vrc = RTSystemQueryOSInfo(RTSYSOSINFO_PRODUCT, szTmp, 
sizeof(szTmp));
             if (RT_SUCCESS(vrc) || vrc == VERR_BUFFER_OVERFLOW)
Index: src/VBox/Additions/common/VBoxService/VBoxService.cpp
===================================================================
--- src/VBox/Additions/common/VBoxService/VBoxService.cpp.orig
+++ src/VBox/Additions/common/VBoxService/VBoxService.cpp
@@ -157,10 +157,10 @@ static void VBoxServiceLogHeaderFooter(P
         case RTLOGPHASE_BEGIN:
         {
             pfnLog(pLoggerRelease,
-                   "VBoxService %s r%s (verbosity: %d) %s (%s %s) release 
log\n"
+                   "VBoxService %s r%s (verbosity: %d) %s (%s %s) release 
log\n"
                    "Log opened %s\n",
                    RTBldCfgVersion(), RTBldCfgRevisionStr(), g_cVerbosity, 
VBOX_BUILD_TARGET,
-                   __DATE__, __TIME__, szTmp);
+                   "openSUSE","Buildservice",szTmp);
 
             int vrc = RTSystemQueryOSInfo(RTSYSOSINFO_PRODUCT, szTmp, 
sizeof(szTmp));
             if (RT_SUCCESS(vrc) || vrc == VERR_BUFFER_OVERFLOW)
Index: src/VBox/HostServices/SharedOpenGL/OpenGLTest/OpenGLTestApp.cpp
===================================================================
--- src/VBox/HostServices/SharedOpenGL/OpenGLTest/OpenGLTestApp.cpp.orig
+++ src/VBox/HostServices/SharedOpenGL/OpenGLTest/OpenGLTestApp.cpp
@@ -148,7 +148,7 @@ static int vboxInitLogging(const char *p
 #endif
                        "Log opened %s\n",
                        VBOX_VERSION_STRING, RTBldCfgRevision(), 
VBOX_BUILD_TARGET,
-                       __DATE__, __TIME__, szTmp);
+                       "openSUSE", "Buildservice", szTmp);
 
         vrc = RTSystemQueryOSInfo(RTSYSOSINFO_PRODUCT, szTmp, sizeof(szTmp));
         if (RT_SUCCESS(vrc) || vrc == VERR_BUFFER_OVERFLOW)
++++++ vbox-permissions_warning.diff ++++++
Index: VirtualBox-4.1.2_OSE/src/apps/Makefile.kmk
===================================================================
--- VirtualBox-4.1.2_OSE.orig/src/apps/Makefile.kmk
+++ VirtualBox-4.1.2_OSE/src/apps/Makefile.kmk
@@ -34,5 +34,7 @@ if1of ($(KBUILD_TARGET),darwin solaris l
  endif
 endif
 
+include $(PATH_SUB_CURRENT)/VBoxPermissionMessage/Makefile.kmk
+
 include $(KBUILD_PATH)/subfooter.kmk
 
Index: VirtualBox-4.1.2_OSE/src/apps/VBoxPermissionMessage/Makefile.kmk
===================================================================
--- /dev/null
+++ VirtualBox-4.1.2_OSE/src/apps/VBoxPermissionMessage/Makefile.kmk
@@ -0,0 +1,31 @@
+# $Id: Makefile.kmk 28800 2010-04-27 08:22:32Z vboxsync $
+## @file
+#
+# VBoxPermissionMessage 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 += VBoxPermissionMessage
+
+VBoxPermissionMessage_TEMPLATE = VBOXQT4GUIEXE
+VBoxPermissionMessage_SOURCES = VBoxPermissionMessage.cpp
+VBoxPermissionMessage_QT_MODULES = Core Gui
+
+#INSTALLS += VBoxPermissionMessage
+
+include $(KBUILD_PATH)/subfooter.kmk
+
Index: 
VirtualBox-4.1.2_OSE/src/apps/VBoxPermissionMessage/VBoxPermissionMessage.cpp
===================================================================
--- /dev/null
+++ 
VirtualBox-4.1.2_OSE/src/apps/VBoxPermissionMessage/VBoxPermissionMessage.cpp
@@ -0,0 +1,12 @@
+#include <QtGui/QApplication>
+#include <QtGui/QMessageBox>
+int main(int argc, char *argv[])
+{
+        QApplication app(argc, argv);
+        QMessageBox msgBox;
+        msgBox.setWindowTitle(QObject::tr("Permissions problem !"));
+        msgBox.setText(QObject::tr("You are not a member of the \"vboxusers\" 
group. Please add yourself to this group before starting VirtualBox. You could 
do it using: Yast / Security and Users / User and Group management. Don't 
forget re-login your user account!"));
+        int ret = msgBox.exec();
+        app.quit();
+        return 0;
+}
\ No newline at end of file
++++++ vbox-python-detection.diff ++++++
--- VirtualBox-4.0.2_OSE.orig/src/libs/xpcom18a4/python/gen_python_deps.py      
2011-01-14 20:15:09.000000000 +0000
+++ VirtualBox-4.0.2_OSE/src/libs/xpcom18a4/python/gen_python_deps.py   
2011-02-07 05:36:42.427567000 +0000
@@ -68,7 +68,7 @@
     else:
         multi = 1
 
-    if multi == 0:
+    if not multi:
         prefixes = ["/usr"]
         versions = [str(sys.version_info[0])+'.'+str(sys.version_info[1])]
 
@@ -86,22 +86,23 @@
     for v in versions:
         for p in prefixes:
             c = checkPair(p, v, dllpre, dllsuff, bitness_magic)
-            if c is not None:
+            if c:
                 known[v] = c
                 break
-    keys = known.keys()
-    # we want default to be the lowest versioned Python
-    keys.sort()
-    d = None
     # We need separator other than newline, to sneak through $(shell)
     sep = "|"
-    for k in keys:
-        if d is None:
-            d = k
-        vers = k.replace('.', '')
-        print_vars(vers, known[k], sep, bitness_magic)
-    if d is not None:
-        print_vars("DEF", known[d], sep, bitness_magic)
+
+    if not known:
+        # this type of problem should be detected in configure
+        # print_vars("DEF", defaultpaths, sep, bitness_magic)
+        pass
+    if multi:
+        for ver, paths in known.items():
+            print_vars(ver.replace('.', ''), paths, sep, bitness_magic)
+    else:
+        ver = versions[0]
+        paths = known[ver]
+        print_vars(ver.replace('.', ''), paths, sep, bitness_magic)
 
 if __name__ == '__main__':
     main(sys.argv)
++++++ vbox-ret-in-nonvoid-fnc.diff ++++++
Index: VirtualBox-3.1.4_OSE/src/VBox/Devices/PC/Etherboot-src/core/nic.c
===================================================================
--- VirtualBox-3.1.4_OSE.orig/src/VBox/Devices/PC/Etherboot-src/core/nic.c
+++ VirtualBox-3.1.4_OSE/src/VBox/Devices/PC/Etherboot-src/core/nic.c
@@ -478,6 +478,7 @@ int eth_load(struct dev *dev __unused)
        }
        interruptible_sleep(2);         /* lay off the server for a while */
        longjmp(restart_etherboot, -1);
+       return 0;
 }
 
 
Index: VirtualBox-3.1.4_OSE/src/VBox/Devices/PC/Etherboot-src/core/osloader.c
===================================================================
--- VirtualBox-3.1.4_OSE.orig/src/VBox/Devices/PC/Etherboot-src/core/osloader.c
+++ VirtualBox-3.1.4_OSE/src/VBox/Devices/PC/Etherboot-src/core/osloader.c
@@ -81,6 +81,7 @@ dead_download - Restart etherboot if pro
 **************************************************************************/
 static sector_t dead_download ( unsigned char *data __unused, unsigned int len 
__unused, int eof __unused) {
         longjmp(restart_etherboot, -2);
+               return 0;
 }
 
 #ifdef IMAGE_MULTIBOOT
++++++ vbox-smc-napa.diff ++++++
Index: VirtualBox-4.0.0_OSE/src/VBox/Devices/PC/vbox.dsl
===================================================================
--- VirtualBox-4.0.0_OSE.orig/src/VBox/Devices/PC/vbox.dsl
+++ VirtualBox-4.0.0_OSE/src/VBox/Devices/PC/vbox.dsl
@@ -778,7 +778,7 @@ DefinitionBlock ("DSDT.aml", "DSDT", 1,
                 Device (SMC)
                 {
                     Name (_HID, EisaId ("APP0001"))
-                    Name (_CID, "smc-napa")
+                    Name (_CID, "smcnapa")
 
                     Method (_STA, 0, NotSerialized)
                     {
++++++ vbox-vboxadd-init-script.diff ++++++
Index: src/VBox/Additions/linux/installer/vboxadd.sh
===================================================================
--- src/VBox/Additions/linux/installer/vboxadd.sh.orig
+++ src/VBox/Additions/linux/installer/vboxadd.sh
@@ -21,14 +21,18 @@
 #
 ### BEGIN INIT INFO
 # Provides:       vboxadd
-# Required-Start:
-# Required-Stop:
-# Default-Start:  2 3 4 5
+# Required-Start: $remote_fs
+# Required-Stop:  $remote_fs
+# Default-Start:  2 3 5
 # Default-Stop:   0 1 6
 # Description:    VirtualBox Linux Additions kernel modules
+# Short-Description: VirtualBox Linux Additions kernel modules
 ### END INIT INFO
 
-. /var/lib/VBoxGuestAdditions/config
+if [ -f /var/lib/VBoxGuestAdditions/config ]; then
+       . /var/lib/VBoxGuestAdditions/config
+fi
+
 export BUILD_TYPE
 export USERNAME
 
@@ -169,8 +173,6 @@ fi
 
 dev=/dev/vboxguest
 userdev=/dev/vboxuser
-owner=vboxadd
-group=1
 
 test_for_gcc_and_make()
 {
@@ -256,12 +258,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
@@ -272,12 +268,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
 }
@@ -308,8 +298,7 @@ start()
         do_vboxguest_non_udev;;
     esac
 
-    if [ -n "$BUILDVBOXSF" ]; then
-        running_vboxsf || {
+    running_vboxsf || {
             $MODPROBE vboxsf > /dev/null 2>&1 || {
                 if dmesg | grep "vboxConnect failed" > /dev/null 2>&1; then
                     fail_msg
@@ -319,8 +308,7 @@ start()
                 fi
                 fail "modprobe vboxsf failed"
             }
-        }
-    fi
+    }
 
     # Mount all shared folders from /etc/fstab. Normally this is done by some
     # other startup script but this requires the vboxdrv kernel module loaded.
@@ -337,10 +325,8 @@ stop()
     if ! umount -a -t vboxsf 2>/dev/null; then
         fail "Cannot unmount vboxsf folders"
     fi
-    if [ -n "$BUILDVBOXSF" ]; then
-        if running_vboxsf; then
-            rmmod vboxsf 2>/dev/null || fail "Cannot unload module vboxsf"
-        fi
+    if running_vboxsf; then
+       rmmod vboxsf 2>/dev/null || fail "Cannot unload module vboxsf"
     fi
     if running_vboxguest; then
         rmmod vboxguest 2>/dev/null || fail "Cannot unload module vboxguest"
@@ -500,16 +486,8 @@ extra_setup()
 # setup_script
 setup()
 {
-    setup_modules
-    mod_succ="$?"
-    extra_setup
-    if [ "$mod_succ" -eq "0" ]; then
-        if running_vboxguest || running_vboxadd; then
-            printf "You should restart your guest to make sure the new modules 
are actually used\n\n"
-        else
-            start
-        fi
-    fi
+       begin "Recompiling VirtualBox kernel module, NOT. It has been packaged."
+    succ_msg
 }
 
 # cleanup_script
++++++ vbox-vboxdrv-init-script.diff ++++++
Index: src/VBox/Installer/linux/vboxdrv.sh.in
===================================================================
--- src/VBox/Installer/linux/vboxdrv.sh.in.orig
+++ src/VBox/Installer/linux/vboxdrv.sh.in
@@ -19,11 +19,12 @@
 #
 ### BEGIN INIT INFO
 # Provides:       vboxdrv
-# Required-Start: $syslog
-# Required-Stop:
-# Default-Start:  2 3 4 5
+# Required-Start: $syslog $remote_fs
+# Required-Stop:  $syslog $remote_fs
+# Default-Start:  2 3 5
 # Default-Stop:   0 1 6
 # Short-Description: VirtualBox Linux kernel module
+# Description: VirtualBox Linux kernel module
 ### END INIT INFO
 
 PATH=/sbin:/bin:/usr/sbin:/usr/bin:$PATH
@@ -195,13 +196,6 @@ start()
         fi
     fi
     # ensure permissions
-    if ! chown :%GROUP% $DEVICE 2>/dev/null; then
-        rmmod vboxpci 2>/dev/null
-        rmmod vboxnetadp 2>/dev/null
-        rmmod vboxnetflt 2>/dev/null
-        rmmod vboxdrv 2>/dev/null
-        failure "Cannot change group %GROUP% for device $DEVICE"
-    fi
     if ! $MODPROBE vboxnetflt > /dev/null 2>&1; then
         failure "modprobe vboxnetflt failed. Please use 'dmesg' to find out 
why"
     fi
@@ -299,58 +293,8 @@ stop_vms()
 # setup_script
 setup()
 {
-    stop
-    begin_msg "Uninstalling old VirtualBox DKMS kernel modules"
-    $DODKMS uninstall > $LOG
-    succ_msg
-    if find /lib/modules/`uname -r` -name "vboxpci\.*" 2>/dev/null|grep -q 
vboxpci; then
-        begin_msg "Removing old VirtualBox pci kernel module"
-        find /lib/modules/`uname -r` -name "vboxpci\.*" 2>/dev/null|xargs rm 
-f 2>/dev/null
-        succ_msg
-    fi  
-    if find /lib/modules/`uname -r` -name "vboxnetadp\.*" 2>/dev/null|grep -q 
vboxnetadp; then
-        begin_msg "Removing old VirtualBox netadp kernel module"
-        find /lib/modules/`uname -r` -name "vboxnetadp\.*" 2>/dev/null|xargs 
rm -f 2>/dev/null
-        succ_msg
-    fi  
-    if find /lib/modules/`uname -r` -name "vboxnetflt\.*" 2>/dev/null|grep -q 
vboxnetflt; then
-        begin_msg "Removing old VirtualBox netflt kernel module"
-        find /lib/modules/`uname -r` -name "vboxnetflt\.*" 2>/dev/null|xargs 
rm -f 2>/dev/null
-        succ_msg
-    fi  
-    if find /lib/modules/`uname -r` -name "vboxdrv\.*" 2>/dev/null|grep -q 
vboxdrv; then
-        begin_msg "Removing old VirtualBox kernel module"
-        find /lib/modules/`uname -r` -name "vboxdrv\.*" 2>/dev/null|xargs rm 
-f 2>/dev/null
-        succ_msg
-    fi
-    begin_msg "Trying to register the VirtualBox kernel modules using DKMS"
-    if ! $DODKMS install >> $LOG; then
-      fail_msg "Failed, trying without DKMS"
-      begin_msg "Recompiling VirtualBox kernel modules"
-      if ! $BUILDVBOXDRV \
-          --save-module-symvers /tmp/vboxdrv-Module.symvers \
-          --no-print-directory install >> $LOG 2>&1; then
-          failure "Look at $LOG to find out what went wrong"
-      fi
-      if ! $BUILDVBOXNETFLT \
-          --use-module-symvers /tmp/vboxdrv-Module.symvers \
-          --no-print-directory install >> $LOG 2>&1; then
-          failure "Look at $LOG to find out what went wrong"
-      fi
-      if ! $BUILDVBOXNETADP \
-          --use-module-symvers /tmp/vboxdrv-Module.symvers \
-          --no-print-directory install >> $LOG 2>&1; then
-          failure "Look at $LOG to find out what went wrong"
-      fi
-      if ! $BUILDVBOXPCI \
-          --use-module-symvers /tmp/vboxdrv-Module.symvers \
-          --no-print-directory install >> $LOG 2>&1; then
-          failure "Look at $LOG to find out what went wrong"
-      fi
-    fi
-    rm -f /etc/vbox/module_not_compiled
+    begin_msg "Recompiling VirtualBox vboxadd kernel module, NOT. It has been 
packaged."
     succ_msg
-    start
 }
 
 dmnstatus()
++++++ vbox-vboxweb-init-script.diff ++++++
Index: VirtualBox-4.1.8_OSE/src/VBox/Installer/linux/vboxweb-service.sh.in
===================================================================
--- VirtualBox-4.1.8_OSE.orig/src/VBox/Installer/linux/vboxweb-service.sh.in
+++ VirtualBox-4.1.8_OSE/src/VBox/Installer/linux/vboxweb-service.sh.in
@@ -20,7 +20,7 @@
 # Provides:       vboxweb-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 web service API
 ### END INIT INFO
@@ -50,7 +50,7 @@ if [ -f /etc/redhat-release ]; then
     PIDFILE="/var/lock/subsys/vboxweb-service"
 elif [ -f /etc/SuSE-release ]; then
     system=suse
-    PIDFILE="/var/lock/subsys/vboxweb-service"
+    PIDFILE="/var/run/vboxweb-service"
 elif [ -f /etc/debian_version ]; then
     system=debian
     PIDFILE="/var/run/vboxweb-service"
++++++ virtualbox-4.1.22-rpmlintrc ++++++
addFilter("incoherent-init-script-name vboxdrv")
addFilter("incoherent-init-script-name vboxadd")
addFilter("xorg-x11-driver-virtualbox-ose.* shlib-policy-missing-suffix")
++++++ virtualbox-60-vboxdrv.rules ++++++
KERNEL=="vboxdrv", NAME="vboxdrv", OWNER="root", GROUP="root", MODE="0600"
#these two lines give access permission to vboxusers to properly work with usb 
nodes, this could be security risk (bnc#664520) !!
#
#SUBSYSTEM=="usb_device",ATTR{devnum}=="?*",ATTR{busnum}=="?*",SYMLINK+="vboxusb/$attr{busnum}/$attr{devnum}",RUN+="/usr/bin/setfacl
 -m g:vboxusers:6 /dev/vboxusb/$attr{busnum}/$attr{devnum}"
#SUBSYSTEM=="usb",ENV{DEVTYPE}=="usb_device",ATTR{devnum}=="?*",ATTR{busnum}=="?*",SYMLINK+="vboxusb/$attr{busnum}/$attr{devnum}",RUN+="/usr/bin/setfacl
 -m g:vboxusers:6 /dev/vboxusb/$attr{busnum}/$attr{devnum}"
++++++ virtualbox-60-vboxguest.rules ++++++
KERNEL=="vboxguest", NAME="vboxguest", OWNER="root", MODE="0660" 
ENV{ID_INPUT}="1", ENV{ID_INPUT_MOUSE}="1"
KERNEL=="vboxuser", NAME="vboxuser", OWNER="root", GROUP="users", MODE="0660"
++++++ virtualbox-default.virtualbox ++++++
# /etc/default/virtualbox
#
# 
-------------------------------------------------------------------------------------------------
# In the "SHUTDOWN_USERS" list all users for which a check for runnings VMs 
should be done during
# shutdown of "vboxdrv" resp. the server:
# SHUTDOWN_USERS="foo bar"
#
# Set "SHUTDOWN" to one of "poweroff", "acpibutton" or "savestate" depending on 
which of the
# shutdown methods for running VMs are wanted:
# SHUTDOWN="poweroff"
# SHUTDOWN="acpibutton"
# SHUTDOWN="savestate"
# 
-------------------------------------------------------------------------------------------------
#
#SHUTDOWN_USERS="foo bar"
#SHUTDOWN="savestate"
++++++ virtualbox-guest-kmp-files ++++++
%defattr (-,root,root) 
%dir /lib/modules/%2-%1/
%dir /lib/modules/%2-%1/updates
/lib/modules/%2-%1/updates/vboxsf.ko
/lib/modules/%2-%1/updates/vboxvideo.ko
/lib/modules/%2-%1/updates/vboxguest.ko
++++++ virtualbox-guest-preamble ++++++
Requires: kernel-%1
Provides: virtualbox-guest-kmp = %version
#rename from ose version:
Provides: virtualbox-ose-guest-kmp-%1 = %version
Obsoletes: virtualbox-ose-guest-kmp-%1 < %version
#host (vboxdrv) and guest (vboxguest) kmp exports the same symbol (RTMemFreeEx)
#which break loading modules using modprobe (bnc#661740)
Conflicts: virtualbox-ose-host-kmp
++++++ virtualbox-host-kmp-files ++++++
%defattr (-,root,root)
%dir /lib/modules/%2-%1/
%dir /lib/modules/%2-%1/updates
/lib/modules/%2-%1/updates/vboxdrv.ko
/lib/modules/%2-%1/updates/vboxnetadp.ko
/lib/modules/%2-%1/updates/vboxnetflt.ko
/lib/modules/%2-%1/updates/vboxpci.ko
++++++ virtualbox-host-preamble ++++++
Requires: kernel-%1
Provides: virtualbox-host-kmp = %version
#rename from ose version:
Provides: virtualbox-ose-host-kmp-%1 = %version
Obsoletes: virtualbox-ose-host-kmp-%1 < %version
#host (vboxdrv) and guest (vboxguest) kmp exports the same symbol (RTMemFreeEx)
#which break loading modules using modprobe (bnc#661740)
Conflicts: virtualbox-ose-guest-kmp
++++++ virtualbox-patch-source.sh ++++++
#!/bin/bash

REMOVE_DIRS=( 
src/VBox/Additions/WINNT 
src/VBox/Additions/os2 
kBuild/bin
kBuild/msgstyles
kBuild/tools
kBuild/sdks
tools/darwin.x86
tools/darwin.amd64
tools/freebsd.x86
tools/os2.x86
tools/solaris.x86
tools/solaris.amd64
tools/win.amd64
tools/win.x86
tools/linux.x86
tools/linux.amd64
)

set -o errexit

CMDNAME=${0##*/}
SOURCEDIR=${0%$CMDNAME}

BASENAME=${1%.tar.bz2}

trap "rm -rf  \"$BASENAME-patched.tar\" \"$BASENAME-patched.tar.bz2\"" ERR

for (( N=0 ; N<${#REMOVE_DIRS[@]} ; N++ )) ; do
    #REMOVE_DIRS[N]="$BASENAME/${REMOVE_DIRS[N]}"
    # use a wildcard because VirtualBox-1.6.0-OSE != VirtualBox-1.6.0_OSE
    REMOVE_DIRS[N]="*/${REMOVE_DIRS[N]}"
done

cd "$SOURCEDIR" >/dev/null

if ! test -f "$BASENAME.tar.bz2" ; then
    exit 0
fi

if test -f "$BASENAME-patched.tar.bz2" ; then
    if test "$BASENAME.tar.bz2" -ot "$BASENAME-patched.tar.bz2" ; then
        if test $CMDNAME -ot "$BASENAME-patched.tar.bz2" ; then
            exit 0
        fi
    fi
fi

cp -a "$BASENAME.tar.bz2" "$BASENAME-patched.tar.bz2"
bunzip2 "$BASENAME-patched.tar.bz2"
tar --wildcards --delete -f "$BASENAME-patched.tar" "${REMOVE_DIRS[@]}"
bzip2 "$BASENAME-patched.tar"
++++++ virtualbox-sysconfig.vbox ++++++
## Path:         System/Virtual Machines/VBox
## Description:  Virtual box machines to autostart during boot
## Type:         string
## Default:      ""
#
# Configuration file for the script /etc/init.d/vboxes
#
# The variable VBOX_AUTOSTART holds the virtual machines to be started during
# boot time.  One entry must contain the virtual machine name and the
# virtual machine owner. They are separated with a ";".  Multiple entries 
# (virtual machines) are separated with a space.
#
# Examples:
#   MachineName1;user1
#
#   One virtual machine:
#   openSUSE_Factory;vbox
#
#   Multiple virtual machines:
#   openSUSE_Factory;vbox openSUSE_stable;suse
#
VBOX_AUTOSTART=""

++++++ virtualbox-vboxes ++++++
#!/bin/sh
#
# chkconfig: - 91 35
# description: Starts and stops vbox autostart VMs.
# Based on
# http://www.amiryan.org/2009/11/04/virtualbox-init-d-service-autostart-scriptu
#
# By Richard Bos <rbos at opensuse dot org> - May 2010

### BEGIN INIT INFO
# Provides: vboxes
# Required-Start: $network vboxdrv
# Required-Stop: $network $named
# Default-Start: 3 5
# Default-Stop: 0 1 2 3 4 5 6
# Short-Description: Autostart Virtual Box VMs
# Description: Autostart Virtual Box VMs that are mentioned in 
/etc/sysconfig/vbox file
### END INIT INFO

# Shell functions sourced from /etc/rc.status:
#      rc_check         check and set local and overall rc status
#      rc_status        check and set local and overall rc status
#      rc_status -v     be verbose in local rc status and clear it afterwards
#      rc_status -v -r  ditto and clear both the local and overall rc status
#      rc_status -s     display "skipped" and exit with status 3
#      rc_status -u     display "unused" and exit with status 3
#      rc_failed        set local and overall rc status to failed
#      rc_failed <num>  set local and overall rc status to <num>
#      rc_reset         clear both the local and overall rc status
#      rc_exit          exit appropriate to overall rc status
#      rc_active        checks whether a service is activated by symlinks
. /etc/rc.status

# Reset status of this service
rc_reset

# Return values acc. to LSB for all commands but status:
# 0       - success
# 1       - generic or unspecified error
# 2       - invalid or excess argument(s)
# 3       - unimplemented feature (e.g. "reload")
# 4       - user had insufficient privileges
# 5       - program is not installed
# 6       - program is not configured
# 7       - program is not running
# 8--199  - reserved (8--99 LSB, 100--149 distrib, 150--199 appl)
#
# Note that starting an already running service, stopping
# or restarting a not-running service as well as the restart
# with force-reload (in case signaling is not supported) are
# considered a success.

VBOXMGR_BIN=/usr/lib/virtualbox/VBoxManage
if [[ ! -x $VBOXMGR_BIN ]]; then
  echo "$VBOXMGR_BIN does not exist"
  if [ "$1" = "stop" ]; then
    exit 0;
  else
    exit 6
  fi;
fi

VBOXHeadLess_BIN=/usr/lib/virtualbox/VBoxHeadless
if [[ ! -x $VBOXHeadLess_BIN ]]; then
  echo "$VBOXHeadLess_BIN does not exist"
  if [ "$1" = "start" ]; then
    exit 6;
  else
    exit 0
  fi;
fi

PRG=$(basename $0)
SERVICE="Virtualbox machines"

[ -r /etc/sysconfig/vbox ] && . /etc/sysconfig/vbox

start() {

  N=1
  for VBOX in $VBOX_AUTOSTART; do

    if grep -q \; <<< "$VBOX"; then
      VBOX_NAME[$N]=$(cut -d\; -f1 <<< "$VBOX")
      VBOX_USER[$N]=$(cut -d\; -f2 <<< "$VBOX")
    else
      VBOX_NAME[$N]="$VBOX"
      VBOX_USER[$N]=""
    fi
    N=$(($N+1)) 
  done

  VBOXES=${#VBOX_NAME[*]}

  if [ $VBOXES -eq 0 ]; then
    # The virtual machines have to be configured in /etc/sysconfig/vbox
    echo -n "Starting $SERVICE: no virtual machines configured"
    rc_status -u
  else

    N=1
    echo -n "Starting $SERVICE: "
    while [[ $N -le $VBOXES ]]; do
      if [[ $N -lt $VBOXES ]]; then
        echo -n "${VBOX_NAME[$N]} (user: ${VBOX_USER[$N]}), "
      else
        echo "${VBOX_NAME[$N]} (user: ${VBOX_USER[$N]})"
      fi
      N=$(($N+1)) 
    done

    N=1
    while [[ $N -le $VBOXES ]]; do

      if [[ -n "${VBOX_USER[$N]}" ]]; then

        if grep --quiet --word-regexp ${VBOX_USER[$N]} /etc/passwd; then

          # The tag "Name:" occurs in multiple sections.  Require at least 7 
blanks
          # with an additional flexible amount of spaces.  At the moment of 
writing
          # 13 spaces are needed.
          VBOX_RUNNING=$(su ${VBOX_USER[$N]} -c "VBoxManage list --long 
runningvms"  |
            sed -n 's/^Name:[[:blank:]]\{7\} *//p' | grep -w "${VBOX_NAME[$N]}")

          if [[ -z "$VBOX_RUNNING" ]]; then

            VBOX_PRESENT=$(su ${VBOX_USER[$N]} -c "$VBOXMGR_BIN list --long 
vms" |
              sed -n 's/^Name:[[:blank:]]\{7\} *//p' | grep -w 
"${VBOX_NAME[$N]}")

            if [[ -n "$VBOX_PRESENT" ]]; then

              # VBoxManage startvm does not result in a VM with working 
networking
              # su ${VBOX_USER[$N]} -c "$VBOXMGR_BIN -q startvm 
"${VBOX_NAME[$N]}" -type headless" > /tmp/$PRG.$$ 2>&1
              # Start virtualbox in Headless mode
              su ${VBOX_USER[$N]} -c "$VBOXHeadLess_BIN --startvm 
"${VBOX_NAME[$N]}"" > /tmp/$PRG.$$ 2>&1 &
              RETVAL=$?

              if [[ $RETVAL == 0 ]]; then
                echo -n " Starting virtual machine: ${VBOX_NAME[$N]} (user: 
${VBOX_USER[$N]})"
                rc_status -v -r
              else
                echo -n " Starting virtual machine: ${VBOX_NAME[$N]} (user: 
${VBOX_USER[$N]}) failed with the following output: "
                rc_failed; rc_status -v -r
                # Give the VBOXHeadLess_BIN some time to write the output file
                sleep 2
                cat /tmp/$PRG.$$
              fi

              rm /tmp/$PRG.$$

            else
              echo -n " Virtual machine: ${VBOX_NAME[$N]} (user: 
${VBOX_USER[$N]}) does not exist"
              rc_status -s -r
            fi

          else
            echo -n " Virtual machine: ${VBOX_NAME[$N]} (user: 
${VBOX_USER[$N]}) is already running"
            rc_status -v -r
          fi

        else
          echo -n " Virtual machine: ${VBOX_NAME[$N]}, VBOX_USER: 
${VBOX_USER[$N]} does not exist"
          rc_status -s -r
        fi

      else
        echo -n " Virtual machine: ${VBOX_NAME[$N]}: VBOX_USER not configured"
        rc_status -s -r
      fi

      N=$(($N+1))
    done
  fi
}

stop() {

  for VBOX in $VBOX_AUTOSTART; do

    if grep -q \; <<< "$VBOX"; then
      VBOX_USER=$(cut -d\; -f2 <<< "$VBOX")

      # Only add the user to the list, if not present yet
      if ! grep -qw "$VBOX_USER" <<< "$VBOX_USERS"; then
        VBOX_USERS="$VBOX_USERS $VBOX_USER"
      fi
    fi
  done

  N=1
  for VBOX_USER in $VBOX_USERS; do
    VBOX_RUNNING=$(su $VBOX_USER -c "$VBOXMGR_BIN list --long runningvms" |
      sed -n 's/^Name:[[:blank:]]\{7\} *//p')
    for VBOX in $VBOX_RUNNING; do
      VBOX_NAME[$N]="$VBOX"
      VBOX_USER[$N]="$VBOX_USER"
      N=$(($N+1)) 
    done
  done

  VBOXES=${#VBOX_NAME[*]}

  if [[ $VBOXES -eq 0 ]]; then
    echo -n "Shutting down $SERVICE: no virtual machines running."
    rc_status -s -r
  else

    echo -n "Shutting down $SERVICE: "
    N=1
    while [[ $N -le $VBOXES ]]; do
      if [[ $N -lt $VBOXES ]]; then
        echo -n "${VBOX_NAME[$N]} (user: ${VBOX_USER[$N]}), "
      else
        echo "${VBOX_NAME[$N]} (user: ${VBOX_USER[$N]})"
      fi
      N=$(($N+1)) 
    done

    N=1
    while [[ $N -le $VBOXES ]]; do

      echo -n " ${VBOX_NAME[$N]}: "
      su ${VBOX_USER[$N]} -c "$VBOXMGR_BIN -q controlvm "${VBOX_NAME[$N]}" 
savestate"
      RETVAL=$?

      echo -n " Shutting down virtual machine: ${VBOX_NAME[$N]} (user: 
${VBOX_USER[$N]})"
      if [[ $RETVAL == $? ]]; then
        rc_status -v -r
      else
        rc_failed; rc_status -v -r
      fi
      N=$(($N+1)) 
    done
  fi
}

status() {

  for VBOX in $VBOX_AUTOSTART; do

    if grep -q \; <<< "$VBOX"; then
      VBOX_USER=$(cut -d\; -f2 <<< "$VBOX")

      # Only add the user to the list, if not present yet
      if ! grep -qw "$VBOX_USER" <<< "$VBOX_USERS"; then
        VBOX_USERS="$VBOX_USERS $VBOX_USER"
      fi
    fi
  done

  N=1
  for VBOX_USER in $VBOX_USERS; do
    # The tag "Name:" occurs in multiple sections.  Require at least 7 blanks
    # with an additional flexible amount of spaces.  At the moment of writing
    # 13 spaces are needed.
    VBOX_RUNNING=$(su $VBOX_USER -c "$VBOXMGR_BIN list --long runningvms" |
      sed -n 's/^Name:[[:blank:]]\{7\} *//p')
    for VBOX in $VBOX_RUNNING; do
      VBOX_NAME[$N]="$VBOX"
      VBOX_USER[$N]="$VBOX_USER"
      N=$(($N+1)) 
    done
  done

  VBOXES=${#VBOX_NAME[*]}

  if [[ $VBOXES -eq 0 ]]; then
    echo -n "$SERVICE: no virtual machines running."
    rc_status -s -r
  else
    N=1
    while [[ $N -le $VBOXES ]]; do
      # The long sed line changes the output from:
      #    running (since 2010-04-25T14:51:57.373000000)
      # to:
      #    running (since 2010-04-25 14:51:57)
      #
      STATE=$(su ${VBOX_USER[$N]} -c "$VBOXMGR_BIN showvminfo 
"${VBOX_NAME[$N]}"" |
        sed -n 's/State: *//p' |
        sed 
's/\([0-9][0-9]\)\.[0-9]\{9\}/\1/;s/\([0-9][0-9]\)T\([0-9][0-9]\)/\1 \2/')
      printf " %-56s %s" "${VBOX_NAME[$N]} (user: ${VBOX_USER[$N]}):" "$STATE"
      rc_status -v
      N=$(($N+1))
    done
  fi
}

case "$1" in
  start)
        start
        ;;
  stop)
        stop
        ;;
  restart|force-reload)
        stop
        start
        ;;
  status)
        status
        ;;
  *)
        echo "Usage: $PRG {start|stop|restart|force-reload|status}" >&2
        exit 3
        ;;
esac

++++++ virtualbox-wrapper.sh ++++++
#!/bin/bash
export QT_NO_KDE_INTEGRATION=1
/usr/bin/id -nG | grep -v -e "root" -e "vboxusers" >/dev/null && 
/usr/lib/virtualbox/VBoxPermissionMessage && exit
LD_LIBRARY_PATH="/usr/lib/virtualbox${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}" 
/usr/lib/virtualbox/VirtualBox $@
-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to