#!/bin/sh # ******************************************************************** # # File : $Source: /cvsroot/ijbswa/current/junkbusterng.init,v $ # # Purpose : This shell script takes care of starting and stopping # junkbuster. # # Copyright : Written by and Copyright (C) 2001 the SourceForge # IJBSWA team. http://ijbswa.sourceforge.net # # Based on the Internet Junkbuster originally written # by and Copyright (C) 1997 Anonymous Coders and # Junkbusters Corporation. http://www.junkbusters.com # # This program is free software; you can redistribute it # and/or modify it under the terms of the GNU General # Public License as published by the Free Software # Foundation; either version 2 of the License, or (at # your option) any later version. # # This program is distributed in the hope that it will # be useful, but WITHOUT ANY WARRANTY; without even the # implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. See the GNU General Public # License for more details. # # The GNU General Public License should be included with # this file. If not, you can view it at # http://www.gnu.org/copyleft/gpl.html # or write to the Free Software Foundation, Inc., 59 # Temple Place - Suite 330, Boston, MA 02111-1307, USA. # # Revisions : # $Log: junkbusterng.init,v $ # Revision 1.1 2002/03/22 20:53:03 morcego # - Ongoing process to change name to JunkbusterNG # - configure/configure.in: no change needed # - GNUmakefile.in: # - TAR_ARCH = /tmp/JunkbusterNG-$(RPM_VERSION).tar.gz # - PROGRAM = jbng@EXEEXT@ # - rh-spec now references as junkbusterng-rh.spec # - redhat-upload: references changed to junkbusterng-* (package names) # - tarball-dist: references changed to JunkbusterNG-distribution-* # - tarball-src: now JunkbusterNG-* # - install: initscript now junkbusterng.init and junkbusterng (when # installed) # - junkbuster-rh.spec: renamed to junkbusterng-rh.spec # - junkbusterng.spec: # - References to the expression ijb where changed where possible # - New package name: junkbusterng (all in lower case, acording to # the LSB recomendation) # - Version changed to: 2.9.13 # - Release: 1 # - Added: junkbuster to obsoletes and conflicts (Not sure this is # right. If it obsoletes, why conflict ? Have to check it later) # - Summary changed: Stefan, please check and aprove it # - Changes description to use the new name # - Sed string was NOT changed. Have to wait to the manpage to # change first # - Keeping the user junkbuster for now. It will require some aditional # changes on the script (scheduled for the next specfile release) # - Added post entry to move the old logfile to the new log directory # - Removing "chkconfig --add" entry (not good to have it automaticaly # added to the startup list). # - Added preun section to stop the service with the old name, as well # as remove it from the startup list # - Removed the chkconfig --del entry from the conditional block on # the preun scriptlet (now handled on the %files section) # - junkbuster.init: renamed to junkbusterng.init # - junkbusterng.init: # - Changed JB_BIN to jbng # - Created JB_OBIN with the old value of JB_BIN (junkbuster), to # be used where necessary (config dir) # # Aditional notes: # - The config directory is /etc/junkbuster yet. Have to change it on the # specfile, after it is changes on the code # - The only files that got renamed on the cvs tree were the rh specfile and # the init file. Some file references got changes on the makefile and on the # rh-spec (as listed above) # # Revision 1.15 2002/03/09 15:05:58 swa # wrong user.group # # 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. # # 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 (# -> *) # # Revision 1.2 2001/05/24 07:52:24 swa # added header. removed ^M. # # # ********************************************************************/ # This is file /etc/rc.d/init.d/junkbuster and was put here # by the junkbuster rpm # # chkconfig: 235 84 09 # # description: This shell script takes care of starting and stopping \ # junkbuster. # # Source function library. . /etc/rc.d/init.d/functions . /etc/sysconfig/network # Check that networking is up. [ ${NETWORKING} = "no" ] && exit 0 JB_OPRG="junkbuster" JB_PRG="jbng" JB_BIN="/usr/sbin/$JB_PRG" JB_CONF="/etc/$JB_OPRG/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 ] && 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. start () { # start daemon 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 $JB_LOCK return $RETVAL } stop () { # stop daemon echo -n $"Stopping $JB_PRG: " killproc $JB_PRG && rm -f $JB_LOCK $JB_PID RETVAL=$? echo return $RETVAL } case "$1" in start) start ;; stop) stop ;; 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 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|top}" exit 1 esac exit $RETVAL