summaryrefslogtreecommitdiff
path: root/usr/src
diff options
context:
space:
mode:
authormcwalter <none@none>2006-10-25 14:21:46 -0700
committermcwalter <none@none>2006-10-25 14:21:46 -0700
commit45143bb76a76a505b56f74b680f21aa9533dabd0 (patch)
treea4aa8b6a2a369a9e341ee1e9ea1a3fd0350e650f /usr/src
parentfaafa6e33cc19afb09172d9a365a59da0dbfd965 (diff)
downloadillumos-joyent-45143bb76a76a505b56f74b680f21aa9533dabd0.tar.gz
6472110 Need var/svc/profile/platform_SUNW,Sun-Fire-15000.xml to work when upgrading system
Diffstat (limited to 'usr/src')
-rw-r--r--usr/src/pkgdefs/SUNWsckmr/postinstall39
-rw-r--r--usr/src/pkgdefs/SUNWsckmr/preinstall57
-rw-r--r--usr/src/pkgdefs/SUNWsckmr/prototype_com1
3 files changed, 93 insertions, 4 deletions
diff --git a/usr/src/pkgdefs/SUNWsckmr/postinstall b/usr/src/pkgdefs/SUNWsckmr/postinstall
index 9de821a0e6..531493c966 100644
--- a/usr/src/pkgdefs/SUNWsckmr/postinstall
+++ b/usr/src/pkgdefs/SUNWsckmr/postinstall
@@ -3,9 +3,8 @@
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License"). You may not use this file except in compliance
-# with the License.
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
@@ -23,7 +22,7 @@
#
#pragma ident "%Z%%M% %I% %E% SMI"
#
-# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
+# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
@@ -89,6 +88,38 @@ remove_ipsecinit_entry()
fi
}
+#
+# Perform extra activities if the installation is an Upgrade
+# and not an initial installation.
+#
+upgradeExtras()
+{
+
+# Enable the sckmd service on the
+# system if it is a SUNW,Sun-Fire-15000 machine.
+cat >> $BASEDIR/var/svc/profile/upgrade << \_ENABLE_SCKMD
+
+#
+# Enable sckmd if running on a SUNW,Sun-Fire-15000 platform
+#
+if [ `/sbin/uname -i` = "SUNW,Sun-Fire-15000" ]; then
+ /usr/sbin/svcadm enable svc:/platform/sun4u/sckmd:default
+fi
+
+_ENABLE_SCKMD
+}
+
+#
+# The temporary file will be created by the preinstall script
+# if the sckmd service is being installed for the first time by
+# means of an upgrade. If the temporary file does not exist,
+# it is not necessary to take any action.
+#
+TMPFILE=$BASEDIR/tmp/sckmd.tmp
+if [ -f $TMPFILE ]; then
+ upgradeExtras
+ rm -f $TMPFILE
+fi
#
# Remove all of our default policies
diff --git a/usr/src/pkgdefs/SUNWsckmr/preinstall b/usr/src/pkgdefs/SUNWsckmr/preinstall
new file mode 100644
index 0000000000..e891c540d7
--- /dev/null
+++ b/usr/src/pkgdefs/SUNWsckmr/preinstall
@@ -0,0 +1,57 @@
+#! /usr/bin/sh
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+
+#
+# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
+#
+# ident "%Z%%M% %I% %E% SMI"
+
+#
+# If sckmd service is being installed on the system for the first time as
+# part of an upgrade, svcadm must be invoked to enable the new
+# service on SUNW,Sun-Fire-15000 platform. A clean install does
+# not require this step as the appropriate platform profile will
+# control whether or not the sckmd service is enabled.
+#
+
+PLATFORM=`uname -i`
+STARCAT="SUNW,Sun-Fire-15000"
+if [ ${PLATFORM} != "${STARCAT}" ]; then
+ exit 0
+fi
+
+TMPFILE=${BASEDIR}/tmp/sckmd.tmp
+rm -f ${TMPFILE}
+
+if [ "${UPDATE}" = "yes" ]; then
+ #
+ # If sckmd service is already installed, no action is taken since
+ # the admin may have intentionally disabled the service.
+ # Otherwise, a temporary file is used to signal that the
+ # postinstall script should enable the service.
+ #
+ if [ ! -f ${BASEDIR}/var/svc/manifest/platform/sun4u/sckmd.xml ]; then
+ /usr/bin/touch ${TMPFILE}
+ fi
+fi
+
+exit 0
diff --git a/usr/src/pkgdefs/SUNWsckmr/prototype_com b/usr/src/pkgdefs/SUNWsckmr/prototype_com
index 086c6f3d76..7ed4fe305c 100644
--- a/usr/src/pkgdefs/SUNWsckmr/prototype_com
+++ b/usr/src/pkgdefs/SUNWsckmr/prototype_com
@@ -41,6 +41,7 @@ i depend
i i.manifest
i r.manifest
i postinstall
+i preinstall
i preremove
#