#
# 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
#
# Revisions :
# $Log: junkbuster.init,v $
+# 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.
+#
+# Revision 1.6 2001/06/28 13:38:42 sarantis
+# formatting changes; individual return values are returned from the init script.
+#
+# Revision 1.5 2001/06/11 11:37:40 sarantis
+# Minor editing changes.
+#
+# Revision 1.4 2001/06/09 09:14:11 swa
+# shamelessly adapted RPM stuff from the newest rpm that
+# RedHat provided for the JB.
+#
# Revision 1.3 2001/05/25 10:12:44 oes
# Fixed default case in switch statement (# -> *)
#
# 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
-[ -f /usr/sbin/junkbuster ] || exit 0
+. /etc/sysconfig/network
+
+# Check that networking is up.
+[ ${NETWORKING} = "no" ] && exit 0
+
+JB_PRG="junkbuster"
+JB_BIN="/usr/sbin/$JB_PRG"
+JB_CONF="/etc/$JB_PRG/config"
+JB_USER="junkbuster"
+JB_PID="/etc/junkbuster"/$JB_PRG.pid
-[ -f /etc/junkbuster/config ] || exit 0
+# some checks for us
+[ -x $JB_BIN ] || exit 0
+[ -f $JB_CONF ] || exit 0
# See how we were called.
-JB="/usr/sbin/junkbuster /etc/junkbuster/config & "
+JB="$JB_BIN $JB_CONF"
+
start () {
# start daemon
- [ -f /var/lock/subsys/junkbuster ] && exit 0
- echo -n $"Starting junkbuster: "
- daemon --user junkbust $JB
+ echo -n $"Starting $JB_PRG: "
+ daemon --user $JB_USER $JB
RETVAL=$?
echo
- [ $RETVAL = 0 ] && touch /var/lock/subsys/junkbuster
+ [ $RETVAL = 0 ] && touch /var/lock/subsys/$JB_PRG
return $RETVAL
}
stop () {
# stop daemon
- echo -n $"Stopping junkbuster: "
- killproc junkbuster && rm -f /var/lock/subsys/junkbuster
- RETVAL=?$
+ echo -n $"Stopping $JB_PRG: "
+ killproc $JB_PRG && rm -f /var/lock/subsys/$JB_PRG $JB_PID
+ RETVAL=$?
echo
+ return $RETVAL
}
case "$1" in
- start)
- start
+ start)
+ start
;;
-
- stop)
- stop
+ stop)
+ stop
;;
-
- 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 $JB_PID ] ; then
stop
start
- ;;
- condrestart)
- [ -f /var/lock/subsys/junkbuster ] && restart || :
+ RETVAL=$?
+ fi
+ ;;
+ status)
+ status $JB_PRG
+ RETVAL=$?
;;
- status)
- status junkbuster
+ 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|restart|condrestart|status}"
- exit 1
+ *)
+ echo $"Usage: $JB_PRG {start|stop|reload|restart|condrestart|status|top}"
+ exit 1
esac
-exit 0
+exit $RETVAL