Hiding all the warnings generated by #include<windows.h>
[privoxy.git] / junkbuster.init
index 3790d24..f5f045e 100644 (file)
 # 
 #  Revisions   :
 #     $Log: junkbuster.init,v $
+#     Revision 1.14  2002/03/06 06:13:40  hal9
+#     Adapted for Andreas' changes for --user and --pidfile.
+#
+#     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.
 # 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
 
@@ -83,29 +105,35 @@ 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.$JB_USER --pidfile $JB_PID $JB_CONF"
 
 # some checks for us
-[ -x $JB_BIN  ] || exit 0
-[ -f $JB_CONF ] || exit 0
+! [ -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="$JB_BIN $JB_CONF"
-
 start () {
        # start daemon
        echo -n $"Starting $JB_PRG: "
-       daemon --user $JB_USER $JB 
+     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/$JB_PRG
+       [ $RETVAL = 0 ] && touch $JB_LOCK
        return $RETVAL
 }
 
 stop () {
        # stop daemon
        echo -n $"Stopping $JB_PRG: "
-       killproc $JB_PRG && rm -f /var/lock/subsys/$JB_PRG
+       killproc $JB_PRG && rm -f $JB_LOCK $JB_PID
        RETVAL=$?
        echo
        return $RETVAL
@@ -116,27 +144,42 @@ case "$1" in
        start   
        ;;
   stop)
-       stop    
+       stop
        ;;
-  reload|restart)
+  reload)
+       if [ -f $JB_PID ] ; then
+        kill -HUP `cat $JB_PID`
+        RETVAL=$?
+     fi
+       ;;
+  restart)
        stop
        start
        RETVAL=$?
        ;;
   condrestart)
        # restart only if already running
-       if [ -f /var/lock/subsys/$JB_PRG ] ; then
-               stop
-               start
-               RETVAL=$?
+       if [ -f $JB_PID ] ; then
+        stop
+        start
+        RETVAL=$?
        fi 
        ;;
   status)
        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: $JB_PRG {start|stop|reload|restart|condrestart|status}"
+       echo $"Usage: $JB_PRG {start|stop|reload|restart|condrestart|status|top}"
        exit 1
 esac