Index: /trunk/src/VBox/Additions/solaris/Installer/makepackage.sh
===================================================================
--- /trunk/src/VBox/Additions/solaris/Installer/makepackage.sh	(revision 42467)
+++ /trunk/src/VBox/Additions/solaris/Installer/makepackage.sh	(revision 42468)
@@ -84,4 +84,5 @@
 ln -f ./VBoxISAExec $VBOX_INSTALLED_DIR/VBoxClient
 ln -f ./VBoxISAExec $VBOX_INSTALLED_DIR/VBoxControl
+ln -f ./VBoxISAExec $VBOX_INSTALLED_DIR/vboxmslnk
 
 # prepare file list
@@ -115,8 +116,13 @@
 # Manifest class action scripts
 filelist_fixup prototype '$3 == "var/svc/manifest/application/virtualbox/vboxservice.xml"'                   '$2 = "manifest";$6 = "sys"'
+filelist_fixup prototype '$3 == "var/svc/manifest/application/virtualbox/vboxmslnk.xml"'                     '$2 = "manifest";$6 = "sys"'
 
 # vboxguest
 filelist_fixup prototype '$3 == "usr/kernel/drv/vboxguest"'                                                  '$6="sys"'
 filelist_fixup prototype '$3 == "usr/kernel/drv/amd64/vboxguest"'                                            '$6="sys"'
+
+# vboxms
+filelist_fixup prototype '$3 == "usr/kernel/drv/vboxms"'                                                     '$6="sys"'
+filelist_fixup prototype '$3 == "usr/kernel/drv/amd64/vboxms"'                                               '$6="sys"'
 
 # Use 'root' as group so as to match attributes with the previous installation and prevent a conflict. Otherwise pkgadd bails out thinking
Index: /trunk/src/VBox/Additions/solaris/Makefile.kmk
===================================================================
--- /trunk/src/VBox/Additions/solaris/Makefile.kmk	(revision 42467)
+++ /trunk/src/VBox/Additions/solaris/Makefile.kmk	(revision 42468)
@@ -69,4 +69,5 @@
 
 SOLARIS_ADD_USRBIN_DIR                  := $(SOLARIS_ADDINST_OUT_DIR)/usr/bin
+SOLARIS_ADD_USRSBIN_DIR                 := $(SOLARIS_ADDINST_OUT_DIR)/usr/sbin
 SOLARIS_ADD_ETCFS_DIR                   := $(SOLARIS_ADDINST_OUT_DIR)/etc/fs/vboxfs
 SOLARIS_ADD_SERVICESINST_DIR            := $(SOLARIS_ADDINST_OUT_DIR)/var/svc/manifest/application/virtualbox
@@ -129,4 +130,5 @@
 	$(VBOX_PATH_X11_ADDITION_INSTALLER)/vboxclient.desktop \
 	$(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxservice.xml \
+	$(PATH_ROOT)/src/VBox/Additions/solaris/Mouse/vboxmslnk.xml \
 	$(VBOX_BRAND_LICENSE_TXT)=>LICENSE
 
@@ -143,4 +145,5 @@
 	usr \
 	usr/bin \
+	usr/sbin \
 	usr/lib \
 	usr/lib/amd64 \
@@ -221,4 +224,7 @@
 	VBoxControl
 
+SOLARIS_ADD_USRSBIN_LINKS = \
+	vboxmslnk
+
 SOLARIS_ADD_COMMON = \
 	vboxclient.desktop \
@@ -228,5 +234,6 @@
 
 SOLARIS_ADD_SERVICES = \
-	vboxservice.xml
+	vboxservice.xml \
+	vboxmslnk.xml
 
 ifdef VBOX_COMPRESS
@@ -262,5 +269,6 @@
 	$(addprefix $(SOLARIS_VBOXADDINST_DIR)/,$(SOLARIS_ADD_COMMON)) \
 	$(addprefix $(SOLARIS_ADD_SERVICESINST_DIR)/,$(SOLARIS_ADD_SERVICES)) \
-	$(addprefix $(SOLARIS_ADD_USRBIN_DIR)/,$(SOLARIS_ADD_USRBIN_LINKS))
+	$(addprefix $(SOLARIS_ADD_USRBIN_DIR)/,$(SOLARIS_ADD_USRBIN_LINKS)) \
+	$(addprefix $(SOLARIS_ADD_USRSBIN_DIR)/,$(SOLARIS_ADD_USRSBIN_LINKS))
 
 
@@ -281,4 +289,5 @@
 		$(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxguest.sh \
 		$(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxservice.xml \
+		$(PATH_ROOT)/src/VBox/Additions/solaris/Mouse/vboxmslnk.xml \
 		$(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/VBox.sh \
 		$(VBOX_PATH_X11_ADDITION_INSTALLER)/98vboxadd-xclient \
@@ -325,4 +334,5 @@
 endif
 	$(QUIET)$(INSTALL) -m 0644 $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxservice.xml                    $(SOLARIS_ADD_SERVICESINST_DIR)/vboxservice.xml
+	$(QUIET)$(INSTALL) -m 0644 	$(PATH_ROOT)/src/VBox/Additions/solaris/Mouse/vboxmslnk.xml                      $(SOLARIS_ADD_SERVICESINST_DIR)/vboxmslnk.xml
 	$(QUIET)$(SOLARIS_ADDINST_OUT_DIR)/makepackage.sh $(SOLARIS_ADDINST_OUT_DIR) $(PKGFILENAME) $(VBOX_SVN_REV) $(VBOX_SOL_PKG_DEV)
 	$(QUIET)$(INSTALL) -m 0644 $(SOLARIS_ADDINST_OUT_DIR)/$(PKGFILENAME) $(PATH_STAGE_BIN)/additions/$(PKGFILENAME)
@@ -410,2 +420,8 @@
 	$(LN_SYMLINK) -f ../..$(SOLARIS_VBOXADDINST_SUBDIR)/$< $@
 
+#
+# Symlinks from /usr/sbin/ to /opt/VirtualBoxAdditions
+#
+$(addprefix $(SOLARIS_ADD_USRSBIN_DIR)/,$(SOLARIS_ADD_USRSBIN_LINKS)): \
+		$(SOLARIS_ADD_USRSBIN_DIR)/% : % | $$(dir $$@)
+	$(LN_SYMLINK) -f ../..$(SOLARIS_VBOXADDINST_SUBDIR)/$< $@
Index: /trunk/src/VBox/Additions/solaris/Mouse/vboxmslnk.xml
===================================================================
--- /trunk/src/VBox/Additions/solaris/Mouse/vboxmslnk.xml	(revision 42468)
+++ /trunk/src/VBox/Additions/solaris/Mouse/vboxmslnk.xml	(revision 42468)
@@ -0,0 +1,80 @@
+<?xml version='1.0'?>
+<!--
+#
+# Solaris SMF service manifest for VBoxService (timesync).
+#
+     Copyright (C) 2012 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.
+
+     The contents of this file may alternatively be used under the terms
+     of the Common Development and Distribution License Version 1.0
+     (CDDL) only, as it comes in the "COPYING.CDDL" file of the
+     VirtualBox OSE distribution, in which case the provisions of the
+     CDDL are applicable instead of those of the GPL.
+
+     You may elect to license modified versions of this file under the
+     terms and conditions of either the GPL or the CDDL or both.
+-->
+<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1">
+
+<service_bundle type='manifest' name='SUNWvboxguest:vboxmslnk'>
+
+<service
+    name='application/virtualbox/vboxmslnk'
+    type='service'
+    version='1'>
+
+    <create_default_instance enabled='false' />
+
+    <single_instance/>
+
+    <!-- Wait for devices to be initialized as we depend on vboxms (pseudo) -->
+    <dependency
+        name='milestone'
+        grouping='require_all'
+        restart_on='none'
+        type='service'>
+        <service_fmri value='svc:/milestone/devices:default' />
+    </dependency>
+
+    <!-- Wait for local filesystems to be mounted (just to be safe, don't start too early) -->
+    <dependency
+        name='filesystem-local'
+        grouping='require_all'
+        restart_on='none'
+        type='service'>
+        <service_fmri value='svc:/system/filesystem/local:default' />
+    </dependency>
+
+    <exec_method
+        type='method'
+        name='start'
+        exec='/usr/sbin/vboxmslnk'
+        timeout_seconds='30' />
+
+    <exec_method
+        type='method'
+        name='stop'
+        exec=':true'
+        timeout_seconds='60' />
+
+    <property_group name='startd' type='framework'>
+        <propval name='duration' type='astring' value='transient' />
+    </property_group>
+
+    <template>
+        <common_name>
+            <loctext xml:lang='C'>VirtualBox Mouse module link.</loctext>
+        </common_name>
+    </template>
+</service>
+
+</service_bundle>
+
