#!/bin/sh # # Control script for SNServer.exe # 20080319 _M [ -x /var/spool/snfilter/SNFServer.exe ] || exit 0 # See how we were called. case "$1" in start) SNFPID=`ps -ef | grep SNFServer.exe | grep -v grep | awk '{print $2}'` if [ -n "$SNFPID" ]; then echo "SNF is ALREADY UP! pid="$SNFPID else echo -n "Starting SNFServer.exe:" su snfilter -p -c "/var/spool/snfilter/SNFServer.exe /var/spool/snfilter/snf_engine.xml > /dev/null 2>&1 &" RETVAL=$? if [ $RETVAL -eq 0 ]; then echo "SNF UP" else echo "Error "$RETVAL fi fi ;; status) SNFPID=`ps -ef | grep SNFServer.exe | grep -v grep | awk '{print $2}'` if [ -n "$SNFPID" ]; then /var/spool/snfilter/SNFClient.exe -status.second > /dev/null 2>&1 RETVAL=$? if [ $RETVAL -eq 0 ]; then echo "SNFServer is UP, pid="$SNFPID else echo "SNFServer is NOT RESPONDING, pid="$SNFPID fi else echo "SNFServer is DOWN" fi ;; stop) SNFPID=`ps -ef | grep SNFServer.exe | grep -v grep | awk '{print $2}'` if [ -n "$SNFPID" ]; then echo -n "Stopping SNFServer.exe: " /var/spool/snfilter/SNFClient.exe -shutdown > /dev/null 2>&1 echo -n "Pausing for 30 seconds... " sleep 30 SNFPID=`ps -ef | grep SNFServer.exe | grep -v grep | awk '{print $2}'` if [ -n "$SNFPID" ]; then echo "SNF Not down, killing pid=$SNFPID" kill $SNFPID RETVAL=$? else echo "SNF DOWN" fi else echo "SNFServer is NOT UP!" fi ;; restart) $0 stop $0 start RETVAL=$? ;; *) echo "Usage: snfserver {start|status|stop|restart}" exit 1 esac exit $RETVAL