#!/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 2008 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # # # Set path # PATH="/usr/bin:/usr/sbin:${PATH}" export PATH # # Set variables # DEVLINKTB="${PKG_INSTALL_ROOT}/etc/devlink.tab" MODULE="sv" NAMEMAJOR="${PKG_INSTALL_ROOT}/etc/name_to_major" PKG_INSTALL_ROOT=${PKG_INSTALL_ROOT:=/} TMP=/tmp/${PKGINST}.$$ SVC=nws_sv FS_LOCAL_SVC="svc:/system/filesystem/local" # # Set alternate command syntax (if needed) # if [ "${PKG_INSTALL_ROOT}" = "/" ] then REM_DRV="rem_drv" else REM_DRV="rem_drv -b ${PKG_INSTALL_ROOT}" fi # # Functions # rem_devlink() { PATTERN="$1" grep -vw $PATTERN ${DEVLINKTB} >${TMP}.devlink if [ $? -eq 0 ] then mv ${TMP}.devlink ${DEVLINKTB} else rm ${TMP}.devlink fi } # # Disable the service, if it is imported # if [ "${PKG_INSTALL_ROOT:-/}" = "/" ]; then svcprop -q -p general/entity_stability svc:/system/${SVC} # are we imported? if [ $? = 0 ] then svcadm disable -s svc:/system/${SVC} svccfg -s $FS_LOCAL_SVC setprop ${SVC}-local-fs/grouping=optional_all fi fi # # if module has been previously installed, unload and remove it... # grep -w ${MODULE} ${NAMEMAJOR} >/dev/null if [ $? -eq 0 ] then # sv driver needs to unhold before it can be unloaded if [ "${PKG_INSTALL_ROOT}" = "/" ]; then ${PKG_INSTALL_ROOT}/usr/sbin/svboot -u fi ${REM_DRV} ${MODULE} fi rm -f ${PKG_INSTALL_ROOT}/dev/${MODULE} rem_devlink ${MODULE} if [ "${PKG_INSTALL_ROOT:-/}" = "/" ]; then MODID=`modinfo | grep -w $MODULE | awk '{print $1}'` if [ -n "$MODID" ] then modunload -i ${MODID} if [ $? != 0 ] then echo "Error: Failed to unload $MODULE module." exit 1 fi fi fi exit 0