net-nwam revision d62bc4badc1c1f1549c961cfb8b420e650e1272b
c904f64d84db8c4eebedf210ba10893f19ba05edLennart Poettering# CDDL HEADER START
05677bb78079c3fa0283101aac2c07581f4873f1Lennart Poettering# The contents of this file are subject to the terms of the
73090dc815390f4fca4e3ed8a7e1d3806605daaaLennart Poettering# Common Development and Distribution License (the "License").
71092d70af35567dd154d3de2ce04ce62e157a7cLennart Poettering# You may not use this file except in compliance with the License.
71092d70af35567dd154d3de2ce04ce62e157a7cLennart Poettering# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
ddd88763921a1534081ed28e36f6712a85449005Lennart Poettering# or http://www.opensolaris.org/os/licensing.
f957632b960a0a42999b38ded7089fa602b41745Kay Sievers# See the License for the specific language governing permissions
f957632b960a0a42999b38ded7089fa602b41745Kay Sievers# and limitations under the License.
f957632b960a0a42999b38ded7089fa602b41745Kay Sievers# When distributing Covered Code, include this CDDL HEADER in each
9a36607584bbd1d78775353e022a51794b4e27b1Lennart Poettering# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
9a36607584bbd1d78775353e022a51794b4e27b1Lennart Poettering# If applicable, add the following below this CDDL HEADER, with the
a40593a0d0d740efa387e35411e1e456a6c5aba7Lennart Poettering# fields enclosed by brackets "[]" replaced with your own identifying
a40593a0d0d740efa387e35411e1e456a6c5aba7Lennart Poettering# information: Portions Copyright [yyyy] [name of copyright owner]
068665b6fd9839f27bcace7e8f56c0baa6935272Lennart Poettering# CDDL HEADER END
fb0864e7b9c6d26269ccea6ec5c0fd921c029781Lennart Poettering# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
fb0864e7b9c6d26269ccea6ec5c0fd921c029781Lennart Poettering# Use is subject to license terms.
fb0864e7b9c6d26269ccea6ec5c0fd921c029781Lennart Poettering#ident "%Z%%M% %I% %E% SMI"
9586cdfab6a2638078702b7fea7e16b3a71899e2Lennart Poettering# In a shared-IP zone we need this service to be up, but all of the work
9586cdfab6a2638078702b7fea7e16b3a71899e2Lennart Poettering# it tries to do is irrelevant (and will actually lead to the service
9586cdfab6a2638078702b7fea7e16b3a71899e2Lennart Poettering# failing if we try to do it), so just bail out.
9586cdfab6a2638078702b7fea7e16b3a71899e2Lennart Poettering# In the global zone and exclusive-IP zones we proceed.
54ecda32c60c6f2548f74703bfd324694393edaaLennart Poettering /usr/bin/pkill -HUP -z `smf_zonename` nwamd
8d2831af71debde5dc20bfa84a68a7190eab8542Lennart Poettering net_reconfigure || exit $SMF_EXIT_ERR_CONFIG
93e487fc8f88847964baf6e61a58e34ab41898d1Lennart Poettering # Upgrade handling. The upgrade file consists of a series
7d900eb6f58ca76a0f742c6e1823aa7317d4471fLennart Poettering # of dladm(1M) commands. Note that after we are done, we
7d900eb6f58ca76a0f742c6e1823aa7317d4471fLennart Poettering # cannot rename the upgrade script file as the file system
7d900eb6f58ca76a0f742c6e1823aa7317d4471fLennart Poettering # is still read-only at this point. Defer this to the
7d900eb6f58ca76a0f742c6e1823aa7317d4471fLennart Poettering # manifest-import service.
101f077676e9fbe1a66c8b2dc4864a8d7a94c372Lennart Poettering upgrade_script=/var/svc/profile/upgrade_datalink
101f077676e9fbe1a66c8b2dc4864a8d7a94c372Lennart Poettering if [ -f "${upgrade_script}" ]; then
101f077676e9fbe1a66c8b2dc4864a8d7a94c372Lennart Poettering . "${upgrade_script}"
101f077676e9fbe1a66c8b2dc4864a8d7a94c372Lennart Poettering # Initialize security objects.
f7f964eb3625e4cca7f16377fa12aa7a760243e7Lennart Poettering # start nwamd in foreground; it will daemonize itself
15e9fbd851c15ecaad4888932584f37dcd26111aLennart Poettering # After we run this part of the script upon the next reboot
53ed2eeb2e709a6c0d152d7bdf2d9a4b9f997a16Lennart Poettering # network/physical:default will be enabled and
53ed2eeb2e709a6c0d152d7bdf2d9a4b9f997a16Lennart Poettering # network/physical:nwam will be disabled.
353e12c2f4a9e96a47eb80b80d2ffb7bc1d44a1bLennart Poettering # There are various other parts of the system (nscd, nfs) that
353e12c2f4a9e96a47eb80b80d2ffb7bc1d44a1bLennart Poettering # depend on continuing to have a working network. For this
12ac304714996c3c3308d014b301d0d42d16c117Lennart Poettering # reason we don't change the network configuration immediately.
7e64c73a93cdcc7068280f3e3ba8adbd6c6f8f84Lennart Poettering # Disable network/physical temporarily and make sure that will
c4aa65e7147dc742886edf25593e10466b02fc3aLennart Poettering # be enabled on reboot.
36e43bddd0a4526e77cdae2c922bb29f67bd74adLennart Poettering $SVCCFG -s $net_phys setprop general/enabled=true
acb14d318b84bda00d1e666d7dab6794d5bbeb3fLennart Poettering # If nwam is online then make sure that it's temporarily enabled.
b61c90514e134dc781617d172961f25e7352f53bLennart Poettering nwam_online=`/usr/bin/svcprop -t -p restarter/state $net_nwam`
a558d00381291afd6a81f7df07269fe76eeae556Lennart Poettering [ $3 = "online" ] && $SVCADM enable -st $net_nwam
a558d00381291afd6a81f7df07269fe76eeae556Lennart Poettering # Set nwam so that it won't be enabled upon reboot.
a558d00381291afd6a81f7df07269fe76eeae556Lennart Poettering $SVCCFG -s $net_nwam setprop general/enabled=false
a558d00381291afd6a81f7df07269fe76eeae556Lennart Poettering # Nothing to do for sysidtool
05aa9edde0f9f4077b8120389c93cb0134eda9c5Lennart Poettering echo "Usage: $0 { start | stop | refresh }"