123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125 |
- #!/bin/bash
- #
- # SNFServer This shell script takes care of starting and stopping
- # the MicroNeil SNFServer daemon for RedHat systems.
- #
- # Author-- Alban Deniz
- #
- # Copyright (C) 2008 ARM Research Labs, LLC.
- # See www.armresearch.com for the copyright terms.
- #
- # chkconfig: 345 80 30
- # description: SNFServer provides email filtering (anti-spam) services \
- # See www.armresearch.com for details.
- # processname: SNFServer
-
- # Source function library.
- . /etc/rc.d/init.d/functions
-
- # Source networking configuration.
- . /etc/sysconfig/network
-
- # Location of programs.
- installedDir="PREFIX"
-
- # Location of programs.
- dir="$installedDir/sbin"
-
- # Name of config file.
- configFile="CONFFILE"
-
- # Name of daemon.
- prog="SNFServer"
-
- # Name of client.
- clientProg="SNFClient"
-
- # Name of user to run as.
- userName="snfilter"
-
- # Name of lockfile.
- lockFile="/var/lock/subsys/$prog"
-
- # Start command.
- snfStartCmd="$dir/$prog $configFile > /dev/null 2>&1 &"
-
- start(){
- SNFPID=$(pidof -s $dir/$prog)
- echo -n $"Starting $prog: "
- if [ -n "$SNFPID" ] ; then
- echo -n $"$prog is already running"
- failure
- echo
- return 1
- else
- su $userName -c "$snfStartCmd" -s /bin/sh > /dev/null 2>&1
- RETVAL=$?
- if [ $RETVAL -eq 0 ]; then
- $dir/$clientProg -status.second > /dev/null 2>&1
- RETVAL=$?
- fi
- fi
- if [ $RETVAL -eq 0 ]; then
- touch $lockFile
- success
- echo
- else
- failure
- echo
- fi
- return $RETVAL
- }
-
- stop(){
- echo -n $"Stopping $prog: "
- SNFPID=$(pidof -s $dir/$prog)
- if [ -n "$SNFPID" ]; then
- $dir/$clientProg -shutdown > /dev/null 2>&1
- sleep 10
- SNFPID=$(pidof -s $dir/$prog)
- if [ -n "$SNFPID" ]; then
- kill $SNFPID
- RETVAL=$?
- else
- RETVAL=0
- fi
- else
- echo -n $"$prog is not running"
- RETVAL=1
- failure
- echo
- fi
- if [ $RETVAL -eq 0 ]; then
- success
- echo
- rm -f $lockFile
- fi
- return $RETVAL
- }
-
- restart(){
- stop
- start
- }
-
-
- # See how we were called.
- case "$1" in
- start)
- start
- ;;
- stop)
- stop
- ;;
- status)
- status $prog
- ;;
- restart)
- restart
- ;;
- *)
- echo $"Usage: $0 {start|stop|status|restart}"
- exit 1
- esac
-
- exit $?
|