1#! /sbin/sh 2# 3# CDDL HEADER START 4# 5# The contents of this file are subject to the terms of the 6# Common Development and Distribution License, Version 1.0 only 7# (the "License"). You may not use this file except in compliance 8# with the License. 9# 10# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 11# or http://www.opensolaris.org/os/licensing. 12# See the License for the specific language governing permissions 13# and limitations under the License. 14# 15# When distributing Covered Code, include this CDDL HEADER in each 16# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 17# If applicable, add the following below this CDDL HEADER, with the 18# fields enclosed by brackets "[]" replaced with your own identifying 19# information: Portions Copyright [yyyy] [name of copyright owner] 20# 21# CDDL HEADER END 22# 23# 24# Copyright 2004 Sun Microsystems, Inc. All rights reserved. 25# Use is subject to license terms. 26# 27#ident "%Z%%M% %I% %E% SMI" 28# 29# rpcbind method 30# 31# Argument is the method name. 32# 33 34. /lib/svc/share/smf_include.sh 35 36RB_OPT="$1" 37RB_EXIT=0 38RB_DOOR="/var/run/rpc_door" 39 40case ${RB_OPT} in 41 "start") 42 if [ ! -x /usr/sbin/rpcbind ] 43 then 44 echo "ERROR: /usr/sbin/rpcbind does not exist." 45 return $SMF_EXIT_ERR_CONFIG 46 fi 47 48 [ -d ${RB_DOOR} ] || /usr/bin/mkdir -p -m 1777 ${RB_DOOR} 49 50 /usr/sbin/rpcbind > /dev/msglog 2>&1 51 52 RB_EXIT=${?} 53 54 if [ $RB_EXIT != 0 ] 55 then 56 echo "rpcbind failed with $RB_EXIT." 57 RB_EXIT=1 58 fi 59 ;; 60 "stop") 61 # Kill service contract 62 smf_kill_contract $2 TERM 1 63 [ $? -ne 0 ] && RB_EXIT=1 64 /usr/bin/rm -fr ${RB_DOOR} 65 ;; 66 *) 67 RB_EXIT=$SMF_EXIT_ERR_CONFIG 68 ;; 69esac 70 71exit ${RB_EXIT} 72