#!/bin/bash # # Init Script to run stunnel in daemon mode at boot time. # # Author: Riccardo Riva - RPM S.r.l. # Revision 1.0 - 2010 November, 11 #==================================================================== # Run level information: # # chkconfig: 2345 99 99 # description: Secure Tunnel # processname: stunnel # # Run "/sbin/chkconfig --add stunnel" to add the Run levels. # This will setup the symlinks and set the process to run at boot. #==================================================================== #==================================================================== # Paths and variables and system checks. # Source function library . /etc/rc.d/init.d/functions # Check that networking is up. # [ ${NETWORKING} ="yes" ] || exit 0 # Path to the executable. # SEXE=/usr/sbin/stunnel [[ -x $SEXE ]] || SEXE=/usr/bin/stunnel # Path to the configuration file. # CONF=/etc/stunnel/stunnel.conf # Check the configuration file exists. # if [ ! -f $CONF ] ; then echo "The configuration file cannot be found!" exit 0 fi # Path to the lock file. # LOCK_FILE=/var/lock/subsys/stunnel CHROOT=/var/stunnel PIDFILE=/var/run/stunnel.pid #==================================================================== # Run controls: prog=$"stunnel" RETVAL=0 # Start stunnel as daemon. # start() { if [ -f $LOCK_FILE ]; then echo "stunnel is already running!" exit 0 else echo -n $"Starting $prog: " $SEXE $CONF fi RETVAL=$? if [ $RETVAL -eq 0 ] ; then success touch $LOCK_FILE ln -s $CHROOT/$PIDFILE $PIDFILE else failure fi echo return $RETVAL } # Stop stunnel. # stop() { if [ ! -f $LOCK_FILE ]; then echo "stunnel is not running!" exit 0 else echo -n $"Shutting down $prog: " killproc stunnel RETVAL=$? if [ $RETVAL -eq 0 ] ; then rm -f $LOCK_FILE rm -f $PIDFILE fi echo return $RETVAL fi } # See how we were called. case "$1" in start) start ;; stop) stop ;; restart) stop start ;; condrestart) if [ -f $LOCK_FILE ]; then stop start RETVAL=$? fi ;; status) status stunnel RETVAL=$? ;; *) echo $"Usage: $0 {start|stop|restart|condrestart|status}" RETVAL=1 esac exit $RETVAL