X-Git-Url: http://www.privoxy.org/gitweb/?p=privoxy.git;a=blobdiff_plain;f=junkbuster.init;h=ee8d9c4aeb0a8693d3ba6ef8afb832658df86666;hp=f35001a887febf630f87735d1c613e60f2dc22ee;hb=c225d07f6398434a9f890a6d9fcee1ae7b83d61b;hpb=f7a0005dc243374b42190d0225c97f102865e1b6 diff --git a/junkbuster.init b/junkbuster.init index f35001a8..ee8d9c4a 100644 --- a/junkbuster.init +++ b/junkbuster.init @@ -5,9 +5,6 @@ # # Purpose : This shell script takes care of starting and stopping # junkbuster. -# This works only correctly if the user `nobody' is allowed -# to be in the directory where this file is called -# (for example: /root is NOT ok) # # Copyright : Written by and Copyright (C) 2001 the SourceForge # IJBSWA team. http://ijbswa.sourceforge.net @@ -36,6 +33,31 @@ # # Revisions : # $Log: junkbuster.init,v $ +# Revision 1.13 2002/03/05 05:10:10 oes +# Changed pidfile path to conform with FHS +# +# Revision 1.12 2002/03/04 20:44:36 oes +# Changed to new cmdline syntax +# +# Revision 1.11 2001/12/30 14:07:32 steudten +# - Add signal handling (unix) +# - Add SIGHUP handler (unix) +# - Add creation of pidfile (unix) +# - Add action 'top' in rc file (RH) +# - Add entry 'SIGNALS' to manpage +# - Add exit message to logfile (unix) +# +# Revision 1.10 2001/11/05 21:30:23 steudten +# Make JB startup without & due to be a 'real' daemon right now. +# Make the script easy to change. +# +# Revision 1.9 2001/09/15 01:53:12 steudten +# +# Remove test for subsys flag in start. Some minor changes. +# +# Revision 1.8 2001/06/28 13:50:36 sarantis +# swap ?$ with $?; remove bogus ";;" +# # Revision 1.7 2001/06/28 13:40:26 sarantis # remove single quotes from $JB; it was not expanded. # @@ -64,9 +86,10 @@ # chkconfig: 235 84 09 # # description: This shell script takes care of starting and stopping \ -# junkbuster. +# junkbuster. # + # Source function library. . /etc/rc.d/init.d/functions @@ -74,28 +97,40 @@ # Check that networking is up. [ ${NETWORKING} = "no" ] && exit 0 -[ -f /usr/sbin/junkbuster ] || exit 0 -[ -f /etc/junkbuster/config ] || exit 0 +JB_PRG="junkbuster" +JB_BIN="/usr/sbin/$JB_PRG" +JB_CONF="/etc/$JB_PRG/config" +JB_USER="junkbuster" +JB_PID=/var/run/$JB_PRG.pid +JB_LOCK=/var/lock/subsys/$JB_PRG +JB="$JB_BIN --user $JB_USER --pidfile $JB_PID $JB_CONF" + +# some checks for us +! [ -x $JB_BIN ] && echo "Can't find $JB_BIN, exit." && exit 0 +! [ -f $JB_CONF ] && echo "Can't find $JB_CONF, exit." && exit 0 # See how we were called. -JB="/usr/sbin/junkbuster /etc/junkbuster/config & " start () { # start daemon - [ -f /var/lock/subsys/junkbuster ] && exit 0 - echo -n $"Starting junkbuster: " - daemon --user junkbust $JB + echo -n $"Starting $JB_PRG: " + if [ -f $JB_PID ]; then + killproc $JB_PRG && rm -f $JB_LOCK $JB_PID + RETVAL=$? + [ $RETVAL != 0 ] && return $RETVAL + fi + daemon $JB RETVAL=$? echo - [ $RETVAL = 0 ] && touch /var/lock/subsys/junkbuster + [ $RETVAL = 0 ] && touch $JB_LOCK return $RETVAL } stop () { # stop daemon - echo -n $"Stopping junkbuster: " - killproc junkbuster && rm -f /var/lock/subsys/junkbuster + echo -n $"Stopping $JB_PRG: " + killproc $JB_PRG && rm -f $JB_LOCK $JB_PID RETVAL=$? echo return $RETVAL @@ -106,27 +141,42 @@ case "$1" in start ;; stop) - stop + stop + ;; + reload) + if [ -f $JB_PID ] ; then + kill -HUP `cat $JB_PID` + RETVAL=$? + fi ;; - reload|restart) + restart) stop start RETVAL=$? ;; condrestart) # restart only if already running - if [ -f /var/lock/subsys/junkbuster ] ; then - stop - start - RETVAL=$? + if [ -f $JB_PID ] ; then + stop + start + RETVAL=$? fi ;; status) - status junkbuster + status $JB_PRG RETVAL=$? ;; + top) + if [ -f $JB_PID ]; then + a="" + for i in `pidof $JB_PRG` ; do + a="$a -p $i" + done + top $a + fi + ;; *) - echo $"Usage: junkbuster {start|stop|reload|restart|condrestart|status}" + echo $"Usage: $JB_PRG {start|stop|reload|restart|condrestart|status|top}" exit 1 esac