opensshd.init.in revision 204861
1157016Sdes#!@STARTUP_SCRIPT_SHELL@ 2137015Sdes# Donated code that was put under PD license. 3137015Sdes# 4137015Sdes# Stripped PRNGd out of it for the time being. 5137015Sdes 6137015Sdesumask 022 7137015Sdes 8137015SdesCAT=@CAT@ 9137015SdesKILL=@KILL@ 10137015Sdes 11137015Sdesprefix=@prefix@ 12137015Sdessysconfdir=@sysconfdir@ 13137015Sdespiddir=@piddir@ 14137015Sdes 15137015SdesSSHD=$prefix/sbin/sshd 16137015SdesPIDFILE=$piddir/sshd.pid 17204861SdesPidFile=`grep "^PidFile" ${sysconfdir}/sshd_config | tr "=" " " | awk '{print $2}'` 18204861Sdes[ X$PidFile = X ] || PIDFILE=$PidFile 19137015SdesSSH_KEYGEN=$prefix/bin/ssh-keygen 20137015SdesHOST_KEY_RSA1=$sysconfdir/ssh_host_key 21137015SdesHOST_KEY_DSA=$sysconfdir/ssh_host_dsa_key 22137015SdesHOST_KEY_RSA=$sysconfdir/ssh_host_rsa_key 23137015Sdes 24137015Sdes 25137015Sdescheckkeys() { 26137015Sdes if [ ! -f $HOST_KEY_RSA1 ]; then 27137015Sdes ${SSH_KEYGEN} -t rsa1 -f ${HOST_KEY_RSA1} -N "" 28137015Sdes fi 29137015Sdes if [ ! -f $HOST_KEY_DSA ]; then 30137015Sdes ${SSH_KEYGEN} -t dsa -f ${HOST_KEY_DSA} -N "" 31137015Sdes fi 32137015Sdes if [ ! -f $HOST_KEY_RSA ]; then 33137015Sdes ${SSH_KEYGEN} -t rsa -f ${HOST_KEY_RSA} -N "" 34137015Sdes fi 35137015Sdes} 36137015Sdes 37137015Sdesstop_service() { 38137015Sdes if [ -r $PIDFILE -a ! -z ${PIDFILE} ]; then 39137015Sdes PID=`${CAT} ${PIDFILE}` 40137015Sdes fi 41137015Sdes if [ ${PID:=0} -gt 1 -a ! "X$PID" = "X " ]; then 42137015Sdes ${KILL} ${PID} 43137015Sdes else 44137015Sdes echo "Unable to read PID file" 45137015Sdes fi 46137015Sdes} 47137015Sdes 48137015Sdesstart_service() { 49137015Sdes # XXX We really should check if the service is already going, but 50137015Sdes # XXX we will opt out at this time. - Bal 51137015Sdes 52137015Sdes # Check to see if we have keys that need to be made 53137015Sdes checkkeys 54137015Sdes 55137015Sdes # Start SSHD 56137015Sdes echo "starting $SSHD... \c" ; $SSHD 57137015Sdes 58137015Sdes sshd_rc=$? 59137015Sdes if [ $sshd_rc -ne 0 ]; then 60137015Sdes echo "$0: Error ${sshd_rc} starting ${SSHD}... bailing." 61137015Sdes exit $sshd_rc 62137015Sdes fi 63137015Sdes echo done. 64137015Sdes} 65137015Sdes 66137015Sdescase $1 in 67137015Sdes 68137015Sdes'start') 69137015Sdes start_service 70137015Sdes ;; 71137015Sdes 72137015Sdes'stop') 73137015Sdes stop_service 74137015Sdes ;; 75137015Sdes 76137015Sdes'restart') 77137015Sdes stop_service 78137015Sdes start_service 79137015Sdes ;; 80137015Sdes 81137015Sdes*) 82137015Sdes echo "$0: usage: $0 {start|stop|restart}" 83137015Sdes ;; 84137015Sdesesac 85