Hello community,

here is the log from the commit of package virtualbox.3962 for 
openSUSE:13.2:Update checked in at 2015-08-18 09:56:09
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:13.2:Update/virtualbox.3962 (Old)
 and      /work/SRC/openSUSE:13.2:Update/.virtualbox.3962.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "virtualbox.3962"

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

--- /dev/null   2015-07-22 21:25:44.928025004 +0200
+++ /work/SRC/openSUSE:13.2:Update/.virtualbox.3962.new/virtualbox.changes      
2015-08-18 09:56:13.000000000 +0200
@@ -0,0 +1,3787 @@
+-------------------------------------------------------------------
+Sun Aug  9 01:13:19 UTC 2015 - [email protected]
+
+- Version bump to 4.2.30 bnc#938408 CVE-2015-2594:
+    VMM: fixed a hang under rare conditions on 32-bit hosts
+    VMM: fixed a bug while diagnosing VERR_VMX_INVALID_GUEST_STATE Gurus 
Meditations (VT-x only)
+    GUI: allow to save the VM state from the selector even if the VM is 
already paused
+    API: OS type description consistency fix (bug #14162)
+    API: fixed incorrect resuming of VMs on host-resume unless they were 
previously paused due to a host-suspend
+    API: fixed several bugs when cloning a VM having a saved state
+    NAT: fixed several potential crashes
+    Netsniffer: properly handle changing of the trace file name at VM runtime
+    USB: some improvements for passing through audio devices (headsets etc)
+    Audio: fixed audio output and input when changing the default audio device 
more than once on OS X
+    Audio: fixed audio input on OS X under certain circumstances
+    VRDP: fixed a couple of races which may cause a crash during VM poweroff
+    ExtPack: don't fail if the TMP directory contains non-latin1 characters 
(bug #14159)
+    SDK: fixed a memory leak in the Java bindings (bug #13647)
+    Linux hosts: fixed a bug which made the netfilter driver ignore certain 
events (bug #12264)
+    Mac OS X hosts: fixed a bug which might trigger a host kernel panic if a 
VM is started and another hypervisor is active
+    Mac OS X hosts: several El-Capitan fixes
+    X11 Additions: fixed wrong DPI value with certain guests (4.3.28 
regression; bug #14151)
+    Solaris Additions: added quiesce support to co-operate with Solaris' 
fast-reboot feature 
+- Two gcc5 support patches are no longer needed
+  * removed: gcc5-support.patch
+  * removed: gcc51-support.patch
+
+-------------------------------------------------------------------
+Fri Jun 12 10:33:55 UTC 2015 - [email protected]
+
+- Enable building of for all supported kernel flavours
+  * exclude also pv flavour
+
+-------------------------------------------------------------------
+Tue Jun  9 11:36:42 UTC 2015 - [email protected]
+
+- Disable multiversion_kernel support, taken from nvidia driver spec,
+  should fix bnc#925663.
+
+-------------------------------------------------------------------
+Wed May 27 10:22:22 UTC 2015 - [email protected]
+
+- initial gcc5 support (it builds at least)
+  * added: gcc5-support.patch (upstream)
+  * added: gcc51-support.patch (upstream)
+  * added: gcc5-real-support.patch
+
+-------------------------------------------------------------------
+Tue May 19 15:09:12 UTC 2015 - [email protected]
+
+- Add smap.diff (boo#931461)
+
+-------------------------------------------------------------------
+Fri May 15 07:49:31 UTC 2015 - [email protected]
+
+- Version bump to 4.3.28 bnc#935900 CVE-2015-3456:
+  * VMM: fixed a Guru Meditation when rebooting certain guests (for example 
Solaris
+    doing fast reboot) by fixing the implementation for INIT IPI
+  * VMM: added some information for diagnosing rare VERR_VMX_INVALID_VMXON_PTR 
Guru
+    Meditations (VT-x only)
+  * GUI: HID LEDs sync: prevent synchronization if VM window has no focus 
(Windows
+    and Mac OS X hosts only)
+  * GUI: fixed drag and drop moving the cursor between guest screens on certain
+    hosts
+  * 3D: fixed a crash on restoring the VM state on X11 hosts (bug #12737)
+  * 3D: fixed a crash on Linux guest shutdown (bug #12772)
+  * VRDP: fixed incompatibility with rdesktop 1.8.3
+  * VRDP: fixed listening for IPv6 on some systems (bug #14038)
+  * Storage: don't crash if creating an asynchronous I/O context fails (e.g. 
when
+    starting many VMs) and show a proper error message
+  * Floppy: several fixes
+  * Audio: improved the behavior of the volume control for the HD audio device
+    emulation
+  * USB: increase the number of supported drivers from 3 to 5 (Windows hosts 
only)
+  * PS/2 keyboard: synchronize the LED state on VM restore (Windows and Mac OS 
X
+    hosts only)
+  * NAT Network: when running multiple NAT networks with multiple VMs, only 
stop
+    the respective services when stopping VMs (bug #14090)
+  * NAT: don't kill UDP bindings on ICMP errors (bug #13475)
+  * NAT: bandwidth limit now works properly with NAT (bug #11485)
+  * BIOS: fixed the returned size value of the VBE 2.0 PMI function 0Ah (4.2.0
+    regression; bug #14096)
+  * Guest Control: fixed parameter quoting in Windows guests (bug #13157)
+  * Webcam passthrough improvements for Linux (V4L2) hosts to support more 
webcam
+    models
+  * API: don't fail starting a VM with VBOX_E_INVALID_OBJECT_STATE under 
certain
+    conditions (bug #13617)
+  * API: be more verbose on VBOX_E_INVALID_OBJECT_STATE if a medium is 
attached to
+    a running VM (bug #13560)
+  * API: fixed a bug which could result in losing certain screen resize events 
with
+    multi-monitor guests
+  * rdesktop-vrdp: fixed path to the keymaps (bug #12066)
+  * rdesktop-vrdp: switch to version 1.8.3
+  * Windows hosts: more hardening fixes (e.g. bugs #14051, #14052)
+  * Linux hosts: another fix for activated SMAP on Linux 3.19 and newer 
(Broadwell
+    and later; bug #13961)
+  * Linux hosts: Linux 4.1 compile fix (bug #14081)
+  * Solaris hosts: fixed using of VNIC templates with Crossbow based bridged
+    networking to be compatible with vanity interface names
+  * Mac OS X hosts: fixed crash during VM termination under rare circumstances
+  * Windows Additions/WDDM: improved video memory utilization and allow 
more/bigger
+    guest screens with large resolutions (including HiDPI)
+  * X11 Additions: prevent flickering when updating mouse cursor
+  * Solaris Additions: fixed incorrect usage of 'prtconf' while installing 
Guest
+    Additions (Solaris 10 only)
+- Refresh patch:
+  * vbox-vboxadd-init-script.diff
+
+-------------------------------------------------------------------
+Sun May 10 10:47:58 UTC 2015 - [email protected]
+
+- Provide host-kmp src for use with custom kernels (bnc#925663)
+
+-------------------------------------------------------------------
+Wed May  6 20:35:29 UTC 2015 - [email protected]
+
+- Create groups properly and also create vboxsf and vboxguest on
+  guest additions bnc#927708
+
+-------------------------------------------------------------------
+Wed May  6 16:52:56 UTC 2015 - [email protected]
+
+- Build with system libs for X instead of localy built ones.
+  This should fix bnc#929697
+- Adds patch:
+  * virtualbox-system-x.patch
+
+-------------------------------------------------------------------
+Wed May  6 15:51:43 UTC 2015 - [email protected]
+
+- Split kmk call to multiple lines
+
+-------------------------------------------------------------------
+Wed May  6 15:40:52 UTC 2015 - [email protected]
+
+- Reorder alignment of buildroot for various install commands so it
+  does not look so fuzzy
+
+-------------------------------------------------------------------
+Mon Apr 20 11:10:16 UTC 2015 - [email protected]
+
+- Allow access to vboxdrv to vboxusers group members bnc#927525
+
+-------------------------------------------------------------------
+Mon Mar 23 10:04:55 UTC 2015 - [email protected]
+
+- Version bump to 2.3.26:
+  * GUI: in the snapshots pane, protect the age of snapshots against wrong host
+    time (bug #13955)
+  * NAT Network: fixed a bug which prevented to propagate any DNS name server /
+    domain / search string information to the NAT network (4.3.24 regression; 
bugs
+    #13915, #13918)
+  * NAT Network: don't delay the shutdown of VBoxSVC on Windows hosts
+  * Mouse support: the mouse could not be moved under rare conditions if no 
Guest
+  * Additions are installed (4.3.24 regression; bug #13935)
+  * Storage: if the guest ejects a virtual CD/DVD medium, make the change 
permanent
+    (bugs #9858, #12885)
+  * VGA: made saving secondary screen sizes possible in X11 guests
+  * SDK: fixed the VirtualBox.tlb file (4.3.20 regression; bug #13943)
+    rdesktop-vrdp: make it work with USB devices again (4.3.14 regression; bug
+    #13901)
+  * USB: fixed a possible BSOD on Windows hosts under rare conditions
+  * iPXE: enable the HTTP download protocol on non-Linux hosts (bug #13628)
+  * Mac OS X hosts: don't panic on hosts with activated SMAP (Broadwell and 
later;
+    bug #13951)
+  * Linux hosts: don't crash Linux 4.0 hosts (bug #13835)
+
+-------------------------------------------------------------------
+Wed Mar  4 11:41:54 UTC 2015 - [email protected]
+
+- Version bump to 2.3.24:
+  * VMM: emulation fix for the ENTER instruction under certain conditions; 
fixes
+    Solaris 10 guests (VT-x without unrestricted guest execution)
+  * VMM: fix for handling NMIs on Linux hosts with X2APIC enabled
+  * NAT/NAT Network: fix connection drops when the host's DHCP lease was 
renewed
+    (4.3.22 regression; Windows hosts only; bug #13839)
+  * NAT: don't crash on an empty domain list when switching the DNS host
+    configuration (4.3.22 regression; Mac OS X hosts only; bug #13874)
+  * PXE: re-enable it on Windows hosts (4.3.22 regression; Windows hosts only; 
bug
+    #13842)
+  * Shared Folders: fixed a problem with Windows guests (4.3.22 regression; bug
+    #13786)
+  * Audio: improved record quality when using the DirectSound audio backend
+  * VBoxManage: when executing the controlvm command take care that the
+    corresponding VM runtime changes are saved permanently (bug #13892)
+  * Windows Installer: properly install the 32-bit version of VBoxRes.dll on 
32-bit
+    hosts (bug #13876)
+  * Linux hosts / guests: Linux 4.0 fixes (bug #13835)
+  * OS/2 Additions: fixed mouse integration (4.3.22 regression; bug #13825)
+  * X11 Additions: fixed a sporadic failure to deactivate virtual screens (bug
+    #13845)
+- Use smp_mflags when building kernel modules
+
+-------------------------------------------------------------------
+Thu Feb 26 18:13:18 UTC 2015 - [email protected]
+
+- Install vboxvideo_drv_117.so on Factory
++++ 3590 more lines (skipped)
++++ between /dev/null
++++ and /work/SRC/openSUSE:13.2:Update/.virtualbox.3962.new/virtualbox.changes

New:
----
  UserManual.pdf
  VirtualBox-4.3.30-patched.tar.bz2
  _constraints
  _service
  gcc5-real-support.patch
  smap.diff
  vbox-default-os-type.diff
  vbox-deprec-gsoap-service-proxies.diff
  vbox-disable-updates.diff
  vbox-fpie.diff
  vbox-gsoapssl-deps.diff
  vbox-no-build-dates.diff
  vbox-permissions_warning.diff
  vbox-python-detection.diff
  vbox-smc-napa.diff
  vbox-vboxadd-init-script.diff
  vbox-vboxdrv-init-script.diff
  vbox-vboxweb-init-script.diff
  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-rpmlintrc
  virtualbox-sysconfig.vbox
  virtualbox-system-x.patch
  virtualbox-vboxes
  virtualbox-wrapper.sh
  virtualbox.changes
  virtualbox.spec

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

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

++++++ _service ++++++
<services>
  <service name="refresh_patches" mode="disabled">
    <param name="changesgenerate">enable</param>
  </service>
</services>
++++++ gcc5-real-support.patch ++++++
---
 Config.kmk |    2 +-
 configure  |    9 +++++++--
 2 files changed, 8 insertions(+), 3 deletions(-)

--- a/Config.kmk
+++ b/Config.kmk
@@ -2292,7 +2292,7 @@ else
  # The reason for this hack is that the windows kmk_ash cannot deal with 
$((1+1)).
  # Some versions of gcc (e.g. openSUSE11) return only major.minor on `gcc 
-dumpversion`.
  VBOX_GCC_VERSION = $(shell \
-    $(1) -dumpversion | $(SED_EXT) 
's|\([0-9]\)\.\([0-9]\)\.\{0,1\}\([0-9]\{0,1\}\).*|$$(int-add $$(int-mul 10000, 
\1), $$(int-mul 100, \2), $$(firstword \3 0))|' )
+    $(1) -dumpversion | $(SED_EXT) 
's|\([0-9]\)\.\{0,1\}\([0-9]\{0,1\}\)\.\{0,1\}\([0-9]\{0,1\}\).*|$$(int-add 
$$(int-mul 10000, \1), $$(int-mul 100, $$(firstword \2 0)), $$(firstword \3 
0))|' )
 endif
 
 # Find MinGW cross compilers for EFI on non-windows systems. We need to probe
--- a/configure
+++ b/configure
@@ -409,8 +409,13 @@ check_gcc()
         log_failure "cannot execute '$CXX -dumpversion'"
         fail really
       fi
-      cc_maj=`echo $cc_ver|cut -d. -f1`
-      cc_min=`echo $cc_ver|cut -d. -f2`
+      if echo $cc_ver | grep -q '\.'; then
+        cc_maj=`echo $cc_ver|cut -d. -f1`
+        cc_min=`echo $cc_ver|cut -d. -f2`
+      else
+        cc_maj=$cc_ver
+        cc_min=0
+      fi
       if [ "x$cc_ver" != "x$cxx_ver" ]; then
         log_failure "gcc version $cc_ver does not match g++ version $cxx_ver"
         fail really
++++++ smap.diff ++++++
Index: VirtualBox-4.3.28/src/VBox/HostDrivers/Support/linux/SUPDrv-linux.c
===================================================================
--- VirtualBox-4.3.28.orig/src/VBox/HostDrivers/Support/linux/SUPDrv-linux.c
+++ VirtualBox-4.3.28/src/VBox/HostDrivers/Support/linux/SUPDrv-linux.c
@@ -48,6 +48,12 @@
 # include <iprt/power.h>
 # define VBOX_WITH_SUSPEND_NOTIFICATION
 #endif
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 7, 0)
+# include <asm/smap.h>
+#else
+static inline void clac(void) { }
+static inline void stac(void) { }
+#endif
 
 #include <linux/sched.h>
 #ifdef CONFIG_DEVFS_FS
++++++ vbox-default-os-type.diff ++++++
--- a/src/VBox/Frontends/VirtualBox/src/widgets/UINameAndSystemEditor.cpp       
2014-02-25 18:08:58.000000000 +0100
+++ b/src/VBox/Frontends/VirtualBox/src/widgets/UINameAndSystemEditor.cpp       
2014-03-03 15:18:07.298245235 +0100
@@ -203,15 +203,15 @@
         if (iIndexWinXP != -1)
             m_pTypeCombo->setCurrentIndex(iIndexWinXP);
     }
-    /* Or select Ubuntu item for Linux family as default: */
+    /* Or select openSUSE item for Linux family as default: */
     else if (strFamilyId == "Linux")
     {
-        QString strDefaultID = "Ubuntu";
+        QString strDefaultID = "openSUSE";
         if (ARCH_BITS == 64 && m_fSupportsHWVirtEx && m_fSupportsLongMode)
             strDefaultID += "_64";
-        int iIndexUbuntu = m_pTypeCombo->findData(strDefaultID, TypeID);
-        if (iIndexUbuntu != -1)
-            m_pTypeCombo->setCurrentIndex(iIndexUbuntu);
+        int iIndexopenSUSE = m_pTypeCombo->findData(strDefaultID, TypeID);
+        if (iIndexopenSUSE != -1)
+            m_pTypeCombo->setCurrentIndex(iIndexopenSUSE);
     }
     /* Else simply select the first one present: */
     else m_pTypeCombo->setCurrentIndex(0);
++++++ vbox-deprec-gsoap-service-proxies.diff ++++++
diff -Pdpru VirtualBox-4.3.18.orig/src/VBox/Main/webservice/Makefile.kmk 
VirtualBox-4.3.18/src/VBox/Main/webservice/Makefile.kmk
--- VirtualBox-4.3.18.orig/src/VBox/Main/webservice/Makefile.kmk        
2014-10-11 14:07:33.000000000 +0200
+++ VirtualBox-4.3.18/src/VBox/Main/webservice/Makefile.kmk     2014-10-13 
17:10:53.689539003 +0200
@@ -683,7 +683,7 @@ $(VBOXWEB_OUT_DIR)/gsoap_generate_all_ts
 : $(VBOXWEB_GSOAPH_FROM_GSOAP) $(VBOXWEB_GSOAPH_FROM_XSLT) $(VBOX_NSMAP) 
$(RECOMPILE_ON_MAKEFILE_CURRENT) | $$(dir $$@)
        $(call MSG_GENERATE,,lots of files,$(GSOAPH_RELEVANT))
        $(RM) -f $@
-       $(REDIRECT) -C $(VBOXWEB_OUT_DIR) -- $(VBOX_SOAPCPP2) 
$(VBOXWEB_SOAPCPP2_SKIP_FILES) -L -2 -w -I$(VBOX_PATH_GSOAP_IMPORT) 
$(GSOAPH_RELEVANT)
+       $(REDIRECT) -C $(VBOXWEB_OUT_DIR) -- $(VBOX_SOAPCPP2) 
$(VBOXWEB_SOAPCPP2_SKIP_FILES) -z1 -L -2 -w -I$(VBOX_PATH_GSOAP_IMPORT) 
$(GSOAPH_RELEVANT)
        $(APPEND) $@ done
 
 # Copy the generated headers and stuff.  This was split into a separate rule
++++++ vbox-disable-updates.diff ++++++
Index: 
src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsUpdate.cpp
===================================================================
--- 
src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsUpdate.cpp.orig
+++ src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsUpdate.cpp
@@ -62,7 +62,7 @@ void UIGlobalSettingsUpdate::loadToCache
 void UIGlobalSettingsUpdate::getFromCache()
 {
     /* Apply internal variables data to QWidget(s): */
-    m_pCheckBoxUpdate->setChecked(m_cache.m_fCheckEnabled);
+    m_pCheckBoxUpdate->setChecked(false);
     if (m_pCheckBoxUpdate->isChecked())
     {
         m_pComboBoxUpdatePeriod->setCurrentIndex(m_cache.m_periodIndex);
Index: src/VBox/Frontends/VirtualBox/src/settings/UISettingsDialogSpecific.cpp
===================================================================
--- src/VBox/Frontends/VirtualBox/src/settings/UISettingsDialogSpecific.cpp.orig
+++ src/VBox/Frontends/VirtualBox/src/settings/UISettingsDialogSpecific.cpp
@@ -359,15 +359,6 @@ UISettingsDialogGlobal::UISettingsDialog
                     break;
                 }
 #ifdef VBOX_GUI_WITH_NETWORK_MANAGER
-                /* Update page: */
-                case GlobalSettingsPageType_Update:
-                {
-                    pSettingsPage = new UIGlobalSettingsUpdate;
-                    addItem(":/refresh_32px.png", 
":/refresh_disabled_32px.png",
-                            ":/refresh_16px.png", 
":/refresh_disabled_16px.png",
-                            iPageIndex, "#update", pSettingsPage);
-                    break;
-                }
 #endif /* VBOX_GUI_WITH_NETWORK_MANAGER */
                 /* Language page: */
                 case GlobalSettingsPageType_Language:
@@ -498,8 +489,6 @@ void UISettingsDialogGlobal::retranslate
     m_pSelector->setItemText(GlobalSettingsPageType_Input, tr("Input"));
 
 #ifdef VBOX_GUI_WITH_NETWORK_MANAGER
-    /* Update page: */
-    m_pSelector->setItemText(GlobalSettingsPageType_Update, tr("Update"));
 #endif /* VBOX_GUI_WITH_NETWORK_MANAGER */
 
     /* Language page: */
++++++ vbox-fpie.diff ++++++
Index: VirtualBox-4.3.14/Config.kmk
===================================================================
--- VirtualBox-4.3.14.orig/Config.kmk
+++ VirtualBox-4.3.14/Config.kmk
@@ -3963,6 +3963,9 @@ 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
 ifeq ($(KBUILD_TARGET),win) # No CRT!
  TEMPLATE_VBOXR3HARDENEDEXE_SDKS          = VBOX_NTDLL 
$(TEMPLATE_VBOXR3EXE_SDKS)
@@ -3981,8 +3984,8 @@ ifeq ($(KBUILD_TARGET),win) # No CRT!
  TEMPLATE_VBOXR3HARDENEDEXE_LIBS.x86       = $(NOT_SUCH_VARIABLE)
  TEMPLATE_VBOXR3HARDENEDEXE_LIBS.amd64     = $(NOT_SUCH_VARIABLE)
 else ifn1of ($(KBUILD_TARGET), 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-gsoapssl-deps.diff ++++++
Index: VirtualBox-4.3.6/src/VBox/Main/webservice/Makefile.kmk
===================================================================
--- VirtualBox-4.3.6.orig/src/VBox/Main/webservice/Makefile.kmk
+++ VirtualBox-4.3.6/src/VBox/Main/webservice/Makefile.kmk
@@ -303,6 +303,7 @@ endif
  vboxwebsrv_LIBS += \
        $(PATH_STAGE_LIB)/vboxsoap$(VBOX_SUFF_LIB) \
        $(VBOX_GSOAP_CXX_LIBS) \
+       ssl crypto z \
        $(LIB_RUNTIME)
  vboxwebsrv_LIBS.solaris += socket nsl
  ifdef VBOX_WITH_WEBSERVICES_SSL
@@ -480,6 +481,7 @@ $$(VBOX_JWSSRC_JAR): $$(VBOX_JWS_JAR) |
  webtest_LIBS += \
        $(PATH_STAGE_LIB)/vboxsoap$(VBOX_SUFF_LIB) \
        $(VBOX_GSOAP_CXX_LIBS) \
+       ssl crypto z \
        $(LIB_RUNTIME)
  webtest_LIBS.solaris += nsl
  ifdef VBOX_WITH_WEBSERVICES_SSL
++++++ vbox-no-build-dates.diff ++++++
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
@@ -1033,7 +1033,7 @@ int PrintHeader(const char *argv0, const
                   " * IPRT - Unicode Tables.\n"
                   " *\n"
                   " * Automatically Generated from %s\n"
-                  " * by %s (" __DATE__ " " __TIME__ ")\n"
+                  " * 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/Additions/common/VBoxService/VBoxService.cpp
===================================================================
--- src/VBox/Additions/common/VBoxService/VBoxService.cpp.orig
+++ src/VBox/Additions/common/VBoxService/VBoxService.cpp
@@ -161,10 +161,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)
Index: src/VBox/Devices/PC/BIOS/bios.c
===================================================================
--- src/VBox/Devices/PC/BIOS/bios.c.orig
+++ src/VBox/Devices/PC/BIOS/bios.c
@@ -159,7 +159,7 @@ void set_mode(uint8_t mode);
 
 #define BX_PCIBIOS  1
 #define BX_APPNAME          "VirtualBox"
-#define BIOS_BUILD_DATE     __DATE__
+#define BIOS_BUILD_DATE     "openSUSE Buildservice"
 //--------------------------------------------------------------------------
 // print_bios_banner
 //   displays a the bios version
Index: src/VBox/Main/glue/com.cpp
===================================================================
--- src/VBox/Main/glue/com.cpp.orig
+++ src/VBox/Main/glue/com.cpp
@@ -294,7 +294,7 @@ static void vboxHeaderFooter(PRTLOGGER p
 #endif
                    "Log opened %s\n",
                    g_pszLogEntity, VBOX_VERSION_STRING, RTBldCfgRevision(),
-                   RTBldCfgTargetDotArch(), __DATE__, __TIME__, szTmp);
+                   RTBldCfgTargetDotArch(), "openSUSE", "Buildservice", szTmp);
 
             pfnLog(pReleaseLogger, "Build Type: %s\n", KBUILD_TYPE);
             int vrc = RTSystemQueryOSInfo(RTSYSOSINFO_PRODUCT, szTmp, 
sizeof(szTmp));
++++++ vbox-permissions_warning.diff ++++++
Index: VirtualBox-4.3.6/src/apps/Makefile.kmk
===================================================================
--- VirtualBox-4.3.6.orig/src/apps/Makefile.kmk
+++ VirtualBox-4.3.6/src/apps/Makefile.kmk
@@ -34,5 +34,7 @@ if1of ($(KBUILD_TARGET),darwin solaris l
  endif
 endif
 
+include $(PATH_SUB_CURRENT)/VBoxPermissionMessage/Makefile.kmk
+
 include $(FILE_KBUILD_SUB_FOOTER)
 
Index: VirtualBox-4.3.6/src/apps/VBoxPermissionMessage/Makefile.kmk
===================================================================
--- /dev/null
+++ VirtualBox-4.3.6/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.3.6/src/apps/VBoxPermissionMessage/VBoxPermissionMessage.cpp
===================================================================
--- /dev/null
+++ VirtualBox-4.3.6/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 ++++++
Index: VirtualBox-4.3.6/src/libs/xpcom18a4/python/gen_python_deps.py
===================================================================
--- VirtualBox-4.3.6.orig/src/libs/xpcom18a4/python/gen_python_deps.py
+++ VirtualBox-4.3.6/src/libs/xpcom18a4/python/gen_python_deps.py
@@ -71,7 +71,7 @@ def main(argv):
     else:
         multi = 1
 
-    if multi == 0:
+    if not multi:
         prefixes = ["/usr"]
         versions = [str(sys.version_info[0])+'.'+str(sys.version_info[1])]
 
@@ -92,22 +92,23 @@ def main(argv):
     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-smc-napa.diff ++++++
Index: VirtualBox-4.3.6/src/VBox/Devices/PC/vbox.dsl
===================================================================
--- VirtualBox-4.3.6.orig/src/VBox/Devices/PC/vbox.dsl
+++ VirtualBox-4.3.6/src/VBox/Devices/PC/vbox.dsl
@@ -848,7 +848,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,11 +21,12 @@
 #
 ### 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
 
 PATH=$PATH:/bin:/sbin:/usr/sbin
@@ -257,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
@@ -273,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
 }
@@ -286,6 +275,13 @@ do_vboxguest_non_udev()
 start()
 {
     begin "Starting the VirtualBox Guest Additions ";
+
+    if [ -x /usr/bin/systemd-detect-virt  ]; then
+      if [ "x$(systemd-detect-virt)" != "xoracle"  ]; then
+          fail "Not running on a virtualbox guest"
+      fi
+    fi
+
     uname -r | grep -q -E '^2\.6|^3|^4' 2>/dev/null &&
         ps -A -o comm | grep -q '/*udevd$' 2>/dev/null ||
         no_udev=1
@@ -493,32 +489,8 @@ extra_setup()
 # setup_script
 setup()
 {
-    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"
-    export BUILD_TYPE
-    export USERNAME
-
-    MODULE_SRC="$INSTALL_DIR/src/vboxguest-$INSTALL_VER"
-    BUILDINTMP="$MODULE_SRC/build_in_tmp"
-    DODKMS="$MODULE_SRC/do_dkms"
-    chcon -t bin_t "$BUILDINTMP" > /dev/null 2>&1
-    chcon -t bin_t "$DODKMS"     > /dev/null 2>&1
-
-    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
+# Short-Description: VirtualBox Linux module
+# Description: VirtualBox Linux kernel module
 ### END INIT INFO
 
 PATH=/sbin:/bin:/usr/sbin:/usr/bin:$PATH
@@ -191,13 +192,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
@@ -295,70 +289,8 @@ stop_vms()
 # setup_script
 setup()
 {
-    stop
-    DKMS=`which dkms 2>/dev/null`
-    if [ -n "$DKMS" ]; then
-      begin_msg "Uninstalling old VirtualBox DKMS kernel modules"
-      $DODKMS uninstall vboxhost vboxdrv vboxnetflt vboxnetadp > $LOG
-      succ_msg
-    fi
-    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
-    if [ -n "$DKMS" ]; then
-      begin_msg "Trying to register the VirtualBox kernel modules using DKMS"
-      if ! $DODKMS install vboxhost $VERSION >> $LOG; then
-        fail_msg "Failed, trying without DKMS"
-        DKMS=""
-      fi
-    fi
-    if [ -z "$DKMS" ]; then
-      begin_msg "Recompiling VirtualBox kernel modules"
-      if ! $BUILDINTMP \
-          --save-module-symvers /tmp/vboxdrv-Module.symvers \
-          --module-source "$MODULE_SRC/vboxdrv" \
-          --no-print-directory install >> $LOG 2>&1; then
-          failure "Look at $LOG to find out what went wrong"
-      fi
-      if ! $BUILDINTMP \
-          --use-module-symvers /tmp/vboxdrv-Module.symvers \
-          --module-source "$MODULE_SRC/vboxnetflt" \
-          --no-print-directory install >> $LOG 2>&1; then
-          failure "Look at $LOG to find out what went wrong"
-      fi
-      if ! $BUILDINTMP \
-          --use-module-symvers /tmp/vboxdrv-Module.symvers \
-          --module-source "$MODULE_SRC/vboxnetadp" \
-          --no-print-directory install >> $LOG 2>&1; then
-          failure "Look at $LOG to find out what went wrong"
-      fi
-      if ! $BUILDINTMP \
-          --use-module-symvers /tmp/vboxdrv-Module.symvers \
-          --module-source "$MODULE_SRC/vboxpci" \
-          --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 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
===================================================================
--- VirtualBox-4.1.8_OSE.orig/src/VBox/Installer/linux/vboxweb-service.sh
+++ VirtualBox-4.1.8_OSE/src/VBox/Installer/linux/vboxweb-service.sh
@@ -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-60-vboxdrv.rules ++++++
KERNEL=="vboxdrv", NAME="vboxdrv", OWNER="root", GROUP="vboxusers", MODE="0660"
#
#these lines below give access permission to vboxusers to properly work with 
usb nodes, but enabling them could be security risk (bnc#664520) !!
#if you can live with this security problem put these lines below in to the new 
file /etc/udev/rules.d/60-vboxdrv.rules so they will stay enabled also after 
package update
#SUBSYSTEM=="usb_device", ACTION=="add", 
RUN+="/usr/lib/udev/VBoxCreateUSBNode.sh $major $minor $attr{bDeviceClass} 
vboxusers"
#SUBSYSTEM=="usb", ACTION=="add", ENV{DEVTYPE}=="usb_device", 
RUN+="/usr/lib/udev/VBoxCreateUSBNode.sh $major $minor $attr{bDeviceClass} 
vboxusers"
#SUBSYSTEM=="usb_device", ACTION=="remove", 
RUN+="/usr/lib/udev/VBoxCreateUSBNode.sh --remove $major $minor"
#SUBSYSTEM=="usb", ACTION=="remove", ENV{DEVTYPE}=="usb_device", 
RUN+="/usr/lib/udev/VBoxCreateUSBNode.sh --remove $major $minor"
++++++ 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-rpmlintrc ++++++
addFilter("incoherent-init-script-name vboxdrv")
addFilter("incoherent-init-script-name vboxadd")
addFilter("xorg-x11-driver-virtualbox-ose.* shlib-policy-missing-suffix")
++++++ 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-system-x.patch ++++++
Description: Build the X.Org driver only for the selected system X Server 
version.
Author: Michael Meskes <[email protected]>, Felix Geyer <[email protected]>

Index: virtualbox/src/VBox/Additions/common/VBoxGuestLib/Makefile.kmk
===================================================================
--- virtualbox.orig/src/VBox/Additions/common/VBoxGuestLib/Makefile.kmk 
2013-11-19 04:35:17.181627034 -0500
+++ virtualbox/src/VBox/Additions/common/VBoxGuestLib/Makefile.kmk      
2013-11-19 04:36:33.913630598 -0500
@@ -40,8 +40,6 @@
        VBoxGuestR3LibShared
 ifndef VBOX_ONLY_TESTSUITE
  if1of ($(KBUILD_TARGET), freebsd linux netbsd openbsd)
-  LIBRARIES += \
-       VBoxGuestR3LibXFree86
  endif
  if1of ($(KBUILD_TARGET), freebsd linux netbsd openbsd solaris)
   LIBRARIES += \
Index: virtualbox/src/VBox/Additions/common/crOpenGL/Makefile.kmk
===================================================================
--- virtualbox.orig/src/VBox/Additions/common/crOpenGL/Makefile.kmk     
2013-11-19 04:35:17.181627034 -0500
+++ virtualbox/src/VBox/Additions/common/crOpenGL/Makefile.kmk  2013-11-19 
04:35:17.181627034 -0500
@@ -74,18 +74,12 @@
 VBoxOGL_INCS           = .
 if1of ($(KBUILD_TARGET), linux solaris freebsd)
  VBoxOGL_INCS     += \
-       $(VBOX_PATH_X11_ROOT)/libXdamage-1.1 \
-       $(VBOX_PATH_X11_ROOT)/libXcomposite-0.4.0 \
-       $(VBOX_PATH_X11_ROOT)/libXext-1.3.1 \
-       $(VBOX_PATH_X11_ROOT)/libXfixes-4.0.3 \
-       $(VBOX_PATH_X11_ROOT)/damageproto-1.1.0 \
-       $(VBOX_PATH_X11_ROOT)/compositeproto-0.4 \
-       $(VBOX_PATH_X11_ROOT)/fixesproto-4.0 \
-       $(VBOX_PATH_X11_ROOT)/libx11-1.1.5-other \
-       $(VBOX_PATH_X11_ROOT)/xextproto-7.1.1 \
-       $(VBOX_PATH_X11_ROOT)/xproto-7.0.18 \
+       /usr/include/x11 \
+       /usr/include/xorg \
+       /usr/include/pixman-1 \
        $(VBOX_MESA_INCS) \
-       $(PATH_ROOT)/src/VBox/Additions/x11/x11include/libdrm-2.4.13
+       /usr/include/drm \
+       /usr/include/libdrm
  VBoxOGL_DEFS     += VBOX_NO_NATIVEGL
 endif
 
@@ -215,10 +209,10 @@
        $(PATH_STAGE_LIB)/additions/VBoxOGLspuload$(VBOX_SUFF_LIB)
 if1of ($(KBUILD_TARGET), linux solaris freebsd)
  VBoxOGL_LIBS += \
-       $(PATH_STAGE_LIB)/libXcomposite.so \
-       $(PATH_STAGE_LIB)/libXdamage.so \
-       $(PATH_STAGE_LIB)/libXfixes.so \
-       $(PATH_STAGE_LIB)/libXext.so
+       Xcomposite \
+       Xdamage \
+       Xfixes \
+       Xext
  ifdef VBoxOGL_FAKEDRI
   ifeq ($(KBUILD_TARGET), freebsd)
     VBoxOGL_LIBS += \
++++++ 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 $@

Reply via email to