5 # The contents of this file are subject to the terms of the
6 # Common Development and Distribution License (the "License").
7 # You may not use this file except in compliance with the License.
9 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10 # or http://www.opensolaris.org/os/licensing.
11 # See the License for the specific language governing permissions
12 # and limitations under the License.
14 # When distributing Covered Code, include this CDDL HEADER in each
15 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16 # If applicable, add the following below this CDDL HEADER, with the
17 # fields enclosed by brackets "[]" replaced with your own identifying
18 # information: Portions Copyright [yyyy] [name of copyright owner]
23 # Copyright 2009 Sun Microsystems, Inc. All rights reserved.
24 # Use is subject to license terms.
26 # This is the second phase of TCP/IP configuration. The first part is
27 # run by the svc:/network/physical service and includes configuring the
28 # interfaces and setting the machine's hostname. The svc:/network/initial
29 # service does all configuration that can be done before name services are
30 # started, bar configuring IP routing (this is carried out by the
31 # svc:/network/routing-setup service). The final part, run by the
32 # svc:/network/service service, does all configuration that may require
33 # name services. This includes a final re-configuration of the
37 .
/lib
/svc
/share
/smf_include.sh
40 # In a shared-IP zone we need this service to be up, but all of the work
41 # it tries to do is irrelevant (and will actually lead to the service
42 # failing if we try to do it), so just bail out.
43 # In the global zone and exclusive-IP zones we proceed.
45 smf_configure_ip ||
exit $SMF_EXIT_OK
47 # Configure IPv6 Default Address Selection.
48 if [ -f /etc
/inet
/ipaddrsel.conf
]; then
49 /usr
/sbin
/ipaddrsel
-f /etc
/inet
/ipaddrsel.conf
53 # If explicit IPMP groups are being used, in.mpathd will already be started.
54 # However, if TRACK_INTERFACES_ONLY_WITH_GROUPS=no and no explicit IPMP
55 # groups have been configured, then it still needs to be started. So, fire
56 # it up in "adopt" mode; if there are no interfaces it needs to manage, it
57 # will automatically exit.
59 /usr
/bin
/pgrep
-x -u 0 -z `smf_zonename` in.mpathd
>/dev
/null
2>&1 || \
60 /usr
/lib
/inet
/in.mpathd
-a
63 # Set the RFC 1948 entropy, regardless of if I'm using it or not. If present,
64 # use the encrypted root password as a source of entropy. Otherwise,
65 # just use the pre-set (and hopefully difficult to guess) entropy that
66 # tcp used when it loaded.
68 encr
=`/usr/bin/awk -F: '/^root:/ {print $2}' /etc/shadow`
69 [ -z "$encr" ] ||
/usr
/sbin
/ndd
-set /dev
/tcp tcp_1948_phrase
$encr
72 # Set the SDP system Policy. This needs to happen after basic
73 # networking is up but before any networking services that might
74 # want to use SDP are enabled
75 if [ -f /usr
/sbin
/sdpadm
-a -f /etc
/sdp.conf
]; then
77 if [ "$sysenable" = "1" ]; then
78 /usr
/sbin
/sdpadm
enable
83 # Set TCP ISS generation. By default the ISS generation is
84 # time + random()-delta. This might not be strong enough for some users.
85 # See /etc/default/inetinit for settings and further info on TCP_STRONG_ISS.
86 # If not set, use TCP's internal default setting.
88 [ -f /etc
/default
/inetinit
] && .
/etc
/default
/inetinit
89 if [ $TCP_STRONG_ISS ]; then
90 /usr
/sbin
/ndd
-set /dev
/tcp tcp_strong_iss
$TCP_STRONG_ISS