xref: /freebsd-src/crypto/openssh/contrib/hpux/sshd.rc (revision 064bee341e6c590dedc1d33eb6025e1f446f33a6)
1*ce3adf43SDag-Erling Smørgrav#!/sbin/sh
2*ce3adf43SDag-Erling Smørgrav
3*ce3adf43SDag-Erling Smørgrav#
4*ce3adf43SDag-Erling Smørgrav# sshd.rc: SSH daemon start-up and shutdown script
5*ce3adf43SDag-Erling Smørgrav#
6*ce3adf43SDag-Erling Smørgrav
7*ce3adf43SDag-Erling Smørgrav# Allowed exit values:
8*ce3adf43SDag-Erling Smørgrav#	0 = success; causes "OK" to show up in checklist.
9*ce3adf43SDag-Erling Smørgrav#	1 = failure; causes "FAIL" to show up in checklist.
10*ce3adf43SDag-Erling Smørgrav#	2 = skip; causes "N/A" to show up in the checklist.
11*ce3adf43SDag-Erling Smørgrav#           Use this value if execution of this script is overridden
12*ce3adf43SDag-Erling Smørgrav#	    by the use of a control variable, or if this script is not
13*ce3adf43SDag-Erling Smørgrav#	    appropriate to execute for some other reason.
14*ce3adf43SDag-Erling Smørgrav#       3 = reboot; causes the system to be rebooted after execution.
15*ce3adf43SDag-Erling Smørgrav
16*ce3adf43SDag-Erling Smørgrav# Input and output:
17*ce3adf43SDag-Erling Smørgrav#	stdin is redirected from /dev/null
18*ce3adf43SDag-Erling Smørgrav#
19*ce3adf43SDag-Erling Smørgrav#	stdout and stderr are redirected to the /etc/rc.log file
20*ce3adf43SDag-Erling Smørgrav#	during checklist mode, or to the console in raw mode.
21*ce3adf43SDag-Erling Smørgrav
22*ce3adf43SDag-Erling SmørgravPATH=/usr/sbin:/usr/bin:/sbin
23*ce3adf43SDag-Erling Smørgravexport PATH
24*ce3adf43SDag-Erling Smørgrav
25*ce3adf43SDag-Erling SmørgravWHAT='OpenSSH'
26*ce3adf43SDag-Erling SmørgravWHAT_PATH=/opt/openssh/sbin/sshd
27*ce3adf43SDag-Erling SmørgravWHAT_PID=/var/run/sshd.pid
28*ce3adf43SDag-Erling SmørgravWHAT_CONFIG=/etc/rc.config.d/sshd
29*ce3adf43SDag-Erling Smørgrav
30*ce3adf43SDag-Erling Smørgrav# NOTE: If your script executes in run state 0 or state 1, then /usr might
31*ce3adf43SDag-Erling Smørgrav#	not be available.  Do not attempt to access commands or files in
32*ce3adf43SDag-Erling Smørgrav#	/usr unless your script executes in run state 2 or greater.  Other
33*ce3adf43SDag-Erling Smørgrav#	file systems typically not mounted until run state 2 include /var
34*ce3adf43SDag-Erling Smørgrav#	and /opt.
35*ce3adf43SDag-Erling Smørgrav
36*ce3adf43SDag-Erling Smørgravrval=0
37*ce3adf43SDag-Erling Smørgrav
38*ce3adf43SDag-Erling Smørgrav# Check the exit value of a command run by this script.  If non-zero, the
39*ce3adf43SDag-Erling Smørgrav# exit code is echoed to the log file and the return value of this script
40*ce3adf43SDag-Erling Smørgrav# is set to indicate failure.
41*ce3adf43SDag-Erling Smørgrav
42*ce3adf43SDag-Erling Smørgravset_return() {
43*ce3adf43SDag-Erling Smørgrav	x=$?
44*ce3adf43SDag-Erling Smørgrav	if [ $x -ne 0 ]; then
45*ce3adf43SDag-Erling Smørgrav		echo "EXIT CODE: $x"
46*ce3adf43SDag-Erling Smørgrav		rval=1	# script FAILed
47*ce3adf43SDag-Erling Smørgrav	fi
48*ce3adf43SDag-Erling Smørgrav}
49*ce3adf43SDag-Erling Smørgrav
50*ce3adf43SDag-Erling Smørgravcase $1 in
51*ce3adf43SDag-Erling Smørgrav'start_msg')
52*ce3adf43SDag-Erling Smørgrav	echo "Starting $WHAT"
53*ce3adf43SDag-Erling Smørgrav	;;
54*ce3adf43SDag-Erling Smørgrav
55*ce3adf43SDag-Erling Smørgrav'stop_msg')
56*ce3adf43SDag-Erling Smørgrav	echo "Stopping $WHAT"
57*ce3adf43SDag-Erling Smørgrav	;;
58*ce3adf43SDag-Erling Smørgrav
59*ce3adf43SDag-Erling Smørgrav'start')
60*ce3adf43SDag-Erling Smørgrav	if [ -f $WHAT_CONFIG ] ; then
61*ce3adf43SDag-Erling Smørgrav		. $WHAT_CONFIG
62*ce3adf43SDag-Erling Smørgrav	else
63*ce3adf43SDag-Erling Smørgrav		echo "ERROR: $WHAT_CONFIG defaults file MISSING"
64*ce3adf43SDag-Erling Smørgrav	fi
65*ce3adf43SDag-Erling Smørgrav
66*ce3adf43SDag-Erling Smørgrav	if [ "$SSHD_START" -eq 1 -a -x "$WHAT_PATH" ]; then
67*ce3adf43SDag-Erling Smørgrav		$WHAT_PATH $SSHD_ARGS && echo "$WHAT started"
68*ce3adf43SDag-Erling Smørgrav		set_return
69*ce3adf43SDag-Erling Smørgrav	else
70*ce3adf43SDag-Erling Smørgrav		rval=2
71*ce3adf43SDag-Erling Smørgrav	fi
72*ce3adf43SDag-Erling Smørgrav	;;
73*ce3adf43SDag-Erling Smørgrav
74*ce3adf43SDag-Erling Smørgrav'stop')
75*ce3adf43SDag-Erling Smørgrav	if kill `cat $WHAT_PID`; then
76*ce3adf43SDag-Erling Smørgrav		echo "$WHAT stopped"
77*ce3adf43SDag-Erling Smørgrav	else
78*ce3adf43SDag-Erling Smørgrav		rval=1
79*ce3adf43SDag-Erling Smørgrav		echo "Unable to stop $WHAT"
80*ce3adf43SDag-Erling Smørgrav	fi
81*ce3adf43SDag-Erling Smørgrav	set_return
82*ce3adf43SDag-Erling Smørgrav	;;
83*ce3adf43SDag-Erling Smørgrav
84*ce3adf43SDag-Erling Smørgrav*)
85*ce3adf43SDag-Erling Smørgrav	echo "usage: $0 {start|stop|start_msg|stop_msg}"
86*ce3adf43SDag-Erling Smørgrav	rval=1
87*ce3adf43SDag-Erling Smørgrav	;;
88*ce3adf43SDag-Erling Smørgravesac
89*ce3adf43SDag-Erling Smørgrav
90*ce3adf43SDag-Erling Smørgravexit $rval
91