VirtualBox

Changeset 17917 in vbox for trunk/src


Ignore:
Timestamp:
Mar 16, 2009 11:08:13 AM (16 years ago)
Author:
vboxsync
Message:

Solaris/Installer: VBoxNet.

Location:
trunk/src/VBox/Installer/solaris
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Installer/solaris/Makefile.kmk

    r17840 r17917  
    134134        $(if $(VBOX_WITH_VBOXSDL),VBoxSDL,) \
    135135        $(if $(VBOX_WITH_USB),VBoxUSBHelper,) \
    136         VBoxNetDHCP \
     136        $(if $(VBOX_WITH_NETADP),VBoxNetAdpCtl,) \
     137        $(if $(VBOX_WITH_NETADP),VBoxNetDHCP,) \
    137138        VBoxSVC \
    138139        VBoxXPCOMIPCD \
     
    143144        vboxdrv \
    144145        $(if $(VBOX_WITH_NETFLT),vboxflt,) \
     146        $(if $(VBOX_WITH_NETADP),vboxnet,) \
    145147        $(if $(VBOX_WITH_USB),vboxusbmon,) \
    146148        VBoxDD.so \
     
    212214        vboxdrv.conf \
    213215        $(if $(VBOX_WITH_NETFLT),vboxflt.conf,) \
     216        $(if $(VBOX_WITH_NETADP),vboxnet.conf,) \
    214217        $(if $(VBOX_WITH_USB),vboxusbmon.conf,) \
    215218        vboxdrv.sh \
     
    390393                $(PATH_ROOT)/src/VBox/HostDrivers/Support/solaris/vboxdrv.conf \
    391394                $(if $(VBOX_WITH_NETFLT),$(PATH_ROOT)/src/VBox/HostDrivers/VBoxNetFlt/solaris/vboxflt.conf,) \
     395                $(if $(VBOX_WITH_NETADP),$(PATH_ROOT)/src/VBox/HostDrivers/VBoxNetAdp/solaris/vboxnet.conf,) \
    392396                $(if $(VBOX_WITH_USB),$(PATH_ROOT)/src/VBox/HostDrivers/VBoxUSB/solaris/vboxusbmon.conf,) \
    393397                $(if $(not $(VBOX_WITH_NETFLT))$(PATH_ROOT)/src/VBox/Devices/Network/solaris/vnicinit_solaris.sh,) \
     
    412416        $(QUIET)$(INSTALL) -m 0644 $(PATH_ROOT)/src/VBox/HostDrivers/Support/solaris/vboxdrv.conf               $(SOLARIS_INST_DIR)/vboxdrv.conf
    413417        $(QUIET)$(if $(VBOX_WITH_NETFLT),$(INSTALL) -m 0644 $(PATH_ROOT)/src/VBox/HostDrivers/VBoxNetFlt/solaris/vboxflt.conf         $(SOLARIS_INST_DIR)/vboxflt.conf,)
     418        $(QUIET)$(if $(VBOX_WITH_NETADP),$(INSTALL) -m 0644 $(PATH_ROOT)/src/VBox/HostDrivers/VBoxNetAdp/solaris/vboxnet.conf         $(SOLARIS_INST_DIR)/vboxnet.conf,)
    414419        $(QUIET)$(if $(VBOX_WITH_USB),$(INSTALL) -m 0644 $(PATH_ROOT)/src/VBox/HostDrivers/VBoxUSB/solaris/vboxusbmon.conf               $(SOLARIS_INST_DIR)/vboxusbmon.conf,)
    415420        $(QUIET)$(if $(VBOX_OSE),,$(INSTALL) -m 0644 $(PATH_BIN)/LICENSE                                        $(SOLARIS_INST_DIR)/LICENSE)
  • trunk/src/VBox/Installer/solaris/makepackage.sh

    r17840 r17917  
    138138filelist_fixup prototype '$3 == "opt/VirtualBox/amd64/vboxflt=amd64/vboxflt"'                           '$3 = "platform/i86pc/kernel/drv/amd64/vboxflt=amd64/vboxflt"; $6 = "sys"'
    139139
     140# NetAdapter vboxnet
     141filelist_fixup prototype '$3 == "opt/VirtualBox/i386/vboxnet=i386/vboxnet"'                             '$3 = "platform/i86pc/kernel/drv/vboxnet=i386/vboxnet"; $6 = "sys"'
     142filelist_fixup prototype '$3 == "opt/VirtualBox/amd64/vboxnet=amd64/vboxnet"'                           '$3 = "platform/i86pc/kernel/drv/amd64/vboxnet=amd64/vboxnet"; $6 = "sys"'
     143
    140144# USB vboxusbmon
    141145filelist_fixup prototype '$3 == "opt/VirtualBox/i386/vboxusbmon=i386/vboxusbmon"'                       '$3 = "platform/i86pc/kernel/drv/vboxusbmon=i386/vboxusbmon"; $6 = "sys"'
     
    145149filelist_fixup prototype '$3 == "opt/VirtualBox/vboxdrv.conf=vboxdrv.conf"'                             '$3 = "platform/i86pc/kernel/drv/vboxdrv.conf=vboxdrv.conf"'
    146150filelist_fixup prototype '$3 == "opt/VirtualBox/vboxflt.conf=vboxflt.conf"'                             '$3 = "platform/i86pc/kernel/drv/vboxflt.conf=vboxflt.conf"'
     151filelist_fixup prototype '$3 == "opt/VirtualBox/vboxnet.conf=vboxnet.conf"'                             '$3 = "platform/i86pc/kernel/drv/vboxnet.conf=vboxnet.conf"'
    147152filelist_fixup prototype '$3 == "opt/VirtualBox/vboxusbmon.conf=vboxusbmon.conf"'                       '$3 = "platform/i86pc/kernel/drv/vboxusbmon.conf=vboxusbmon.conf"'
    148153
     
    167172fi
    168173
    169 # VBoxUSBHelper needs to be marked setuid.
     174# VBoxUSBHelper needs to be marked setuid root.
    170175if test -f $VBOX_INSTALLED_DIR/amd64/VBoxUSBHelper || test -f $VBOX_INSTALLED_DIR/i386/VBoxUSBHelper; then
    171176    $VBOX_AWK 'NF == 6 \
     
    177182fi
    178183
     184# VBoxNetAdpCtl needs to be marked setuid root.
     185if test -f $VBOX_INSTALLED_DIR/amd64/VBoxNetAdpCtl || test -f $VBOX_INSTALLED_DIR/i386/VBoxNetAdpCtl; then
     186    $VBOX_AWK 'NF == 6 \
     187        && (    $3 == "opt/VirtualBox/amd64/VBoxNetAdpCtl=amd64/VBoxNetAdpCtl" \
     188            ||  $3 == "opt/VirtualBox/i386/VBoxNetAdpCtl=i386/VBoxNetAdpCtl" \
     189            ) \
     190       { $4 = "4755" } { print }' prototype > prototype2
     191    mv -f prototype2 prototype
     192fi
     193
     194
    179195# desktop links and icons
    180196filelist_fixup prototype '$3 == "opt/VirtualBox/virtualbox.desktop=virtualbox.desktop"'                 '$3 = "usr/share/applications/virtualbox.desktop=virtualbox.desktop"'
  • trunk/src/VBox/Installer/solaris/postinstall.sh

    r17638 r17917  
    3737        /opt/VirtualBox/vboxdrv.sh start
    3838        rc=$?
     39
     40        # VBoxDrv loaded successfully, proceed with the rest...
    3941        if test "$rc" -eq 0; then
     42            # Load VBoxNetAdapter vboxnet
     43            if test -f /platform/i86pc/kernel/drv/vboxnet.conf; then
     44                /opt/VirtualBox/vboxdrv.sh netstart
     45                rc=$?
     46            fi
     47
     48            # Load VBoxNetFilter vboxflt
    4049            if test -f /platform/i86pc/kernel/drv/vboxflt.conf; then
    4150                /opt/VirtualBox/vboxdrv.sh fltstart
     
    4352            fi
    4453
     54            # Load VBoxUSBMon vboxusbmon (do NOT load for Solaris 10)
    4555            if test -f /platform/i86pc/kernel/drv/vboxusbmon.conf && test "$osversion" != "5.10"; then
    4656                /opt/VirtualBox/vboxdrv.sh usbstart
    4757                rc=$?
    4858                if test "$rc" -eq 0; then
    49                     # add vboxusbmon to the devlink.tab
     59                    # Add vboxusbmon to the devlink.tab
    5060                    sed -e '
    5161                    /name=vboxusbmon/d' /etc/devlink.tab > /etc/devlink.vbox
     
    102112    fi
    103113
    104     # add vboxdrv to the devlink.tab
     114    # Add vboxdrv to the devlink.tab
    105115    sed -e '
    106116/name=vboxdrv/d' /etc/devlink.tab > /etc/devlink.vbox
     
    108118    mv -f /etc/devlink.vbox /etc/devlink.tab
    109119
    110     # create the device link
     120    # Create the device link
    111121    /usr/sbin/devfsadm -i vboxdrv
    112122
    113     # don't create link for Solaris 10
     123    # Don't create link for Solaris 10
    114124    if test -f /platform/i86pc/kernel/drv/vboxusbmon.conf && test "$osversion" != "5.10"; then
    115125        /usr/sbin/devfsadm -i vboxusbmon
  • trunk/src/VBox/Installer/solaris/preremove.sh

    r17638 r17917  
    3939    # vboxdrv.sh would've been installed, we just need to call it.
    4040    /opt/VirtualBox/vboxdrv.sh usbstop alwaysremdrv
     41    /opt/VirtualBox/vboxdrv.sh netstop alwaysremdrv
    4142    /opt/VirtualBox/vboxdrv.sh fltstop alwaysremdrv
    4243    /opt/VirtualBox/vboxdrv.sh stop alwaysremdrv
  • trunk/src/VBox/Installer/solaris/vboxdrv.sh

    r17645 r17917  
    2525VBIMODNAME="vbi"
    2626FLTMODNAME="vboxflt"
     27NETMODNAME="vboxnet"
    2728USBMODNAME="vboxusbmon"
    2829MODDIR32="/platform/i86pc/kernel/drv"
     
    120121{
    121122    module_added $FLTMODNAME
     123    return $?
     124}
     125
     126vboxnet_added()
     127{
     128    module_added $NETMODNAME
     129    return $?
     130}
     131
     132vboxnet_loaded()
     133{
     134    module_loaded $NETMODNAME
    122135    return $?
    123136}
     
    253266
    254267
     268start_vboxnet()
     269{
     270    if vboxnet_loaded; then
     271        info "VirtualBox NetAdapter kernel module already loaded."
     272    else
     273        /usr/sbin/add_drv -m'* 0666 root sys' $NETMODNAME || abort "Failed to add VirtualBox NetAdapter Kernel module."
     274        /usr/sbin/modload -p drv/$NETMODNAME
     275        if test ! vboxnet_loaded; then
     276            abort "Failed to load VirtualBox NetAdapter kernel module."
     277        else
     278            # Plumb the interface!
     279            /sbin/ifconfig vboxnet0 plumb up
     280            info "VirtualBox NetAdapter kernel module loaded."
     281        fi
     282    fi
     283}
     284
     285stop_vboxnet()
     286{
     287    if vboxnet_loaded; then
     288        vboxnet_mod_id=`/usr/sbin/modinfo | grep $NETMODNAME | cut -f 1 -d ' '`
     289        if test -n "$vboxnet_mod_id"; then
     290            /sbin/ifconfig vboxnet0 unplumb
     291            /usr/sbin/modunload -i $vboxnet_mod_id
     292
     293            # see stop_vboxdrv() for why we have "alwaysremdrv".
     294            if test -n "$ALWAYSREMDRV"; then
     295                /usr/sbin/rem_drv $NETMODNAME
     296            else
     297                if test "$?" -eq 0; then
     298                    /usr/sbin/rem_drv $NETMODNAME || abort "Unloaded VirtualBox NetAdapter kernel module, but failed to remove it!"
     299                else
     300                    abort "Failed to unload VirtualBox NetAdapter kernel module. Old one still active!!"
     301                fi
     302            fi
     303
     304            info "VirtualBox NetAdapter kernel module unloaded."
     305        fi
     306    elif vboxnet_added; then
     307        /usr/sbin/rem_drv $NETMODNAME || abort "Unloaded VirtualBox NetAdapter kernel module, but failed to remove it!"
     308        info "VirtualBox NetAdapter kernel module unloaded."
     309    elif test -z "$SILENTUNLOAD"; then
     310        info "VirtualBox NetAdapter kernel module not loaded."
     311    fi
     312}
     313
     314
    255315start_vboxusbmon()
    256316{
     
    310370{
    311371    stop_vboxusbmon
     372    stop_vboxnet
    312373    stop_vboxflt
    313374    stop_module
     
    318379    start_module
    319380    start_vboxflt
     381    start_vboxnet
    320382    start_vboxusbmon
    321383}
     
    364426    stop_vboxusbmon
    365427    ;;
     428netstart)
     429    start_vboxnet
     430    ;;
     431netstop)
     432    stop_vboxnet
     433    ;;
    366434*)
    367     echo "Usage: $0 {start|stop|status|fltstart|fltstop|usbstart|usbstop|stopall|startall}"
     435    echo "Usage: $0 {start|stop|status|fltstart|fltstop|usbstart|usbstop|netstart|netstop|stopall|startall}"
    368436    exit 1
    369437esac
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette