1## 2# Common setup for startup scripts. 3## 4# Copyright 1998-2002 Apple Computer, Inc. 5## 6 7####################### 8# Configure the shell # 9####################### 10 11## 12# Be strict 13## 14#set -e 15set -u 16 17## 18# Set command search path 19## 20PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/libexec:/System/Library/CoreServices; export PATH 21 22## 23# Set the terminal mode 24## 25#if [ -x /usr/bin/tset ] && [ -f /usr/share/misc/termcap ]; then 26# TERM=$(tset - -Q); export TERM 27#fi 28 29#################### 30# Useful functions # 31#################### 32 33## 34# Determine if the network is up by looking for any non-loopback 35# internet network interfaces. 36## 37CheckForNetwork() 38{ 39 local test 40 41 if [ -z "${NETWORKUP:=}" ]; then 42 test=$(ifconfig -a inet 2>/dev/null | sed -n -e '/127.0.0.1/d' -e '/0.0.0.0/d' -e '/inet/p' | wc -l) 43 if [ "${test}" -gt 0 ]; then 44 NETWORKUP="-YES-" 45 else 46 NETWORKUP="-NO-" 47 fi 48 fi 49} 50 51alias ConsoleMessage=echo 52 53## 54# Process management 55## 56GetPID () 57{ 58 local program="$1" 59 local pidfile="${PIDFILE:=/var/run/${program}.pid}" 60 local pid="" 61 62 if [ -f "${pidfile}" ]; then 63 pid=$(head -1 "${pidfile}") 64 if ! kill -0 "${pid}" 2> /dev/null; then 65 echo "Bad pid file $pidfile; deleting." 66 pid="" 67 rm -f "${pidfile}" 68 fi 69 fi 70 71 if [ -n "${pid}" ]; then 72 echo "${pid}" 73 return 0 74 else 75 return 1 76 fi 77} 78 79## 80# Generic action handler 81## 82RunService () 83{ 84 case $1 in 85 start ) StartService ;; 86 stop ) StopService ;; 87 restart) RestartService ;; 88 * ) echo "$0: unknown argument: $1";; 89 esac 90} 91 92########################## 93# Get host configuration # 94########################## 95. /etc/hostconfig 96