File: //etc/rc1.d/K80imunify-antivirus
#!/bin/bash
# minidaemon daemon
# chkconfig: 345 20 80
# description: minidaemon daemon
# processname: minidaemon
DAEMON=/usr/sbin/minidaemon
NAME=minidaemon
if [ -f /etc/sysconfig/$NAME ]; then
. /etc/sysconfig/$NAME
fi
DESC="Small daemon. Emulate socket activation"
SCRIPTNAME=/etc/init.d/$NAME
RETVAL=0
# Source function library.
. /etc/rc.d/init.d/functions
FILES=(/etc/minidaemon/*.cfg)
# check for alternative config schema
if [ -r "${FILES[0]}" ]; then
CONFIGS=()
for FILE in "${FILES[@]}";
do
CONFIGS+=($FILE)
done;
else
# run without config file
CONFIGS=("")
fi;
CONFIG_NUM=${#CONFIGS[@]}
for ((i=0; i < $CONFIG_NUM; i++)); do
CONFIG=${CONFIGS[${i}]}
if [ -f "$CONFIG" ]; then
NAME=${CONFIG#/etc/minidaemon/}
NAME=${NAME%.cfg}
PIDFILE=$(awk -F "=" '/pid_file/ {print $2}' $CONFIG)
fi
start(){
if [ -z "$CONFIG" ]; then
return 0
fi
[ ! -f /var/lock/subsys/$NAME ] || return 0
echo -n $"Starting ${NAME} service: "
ENVLISTSET=$(grep '^-' $CONFIG | cut -c2-)
eval ${ENVLISTSET}
daemon --user=root $DAEMON $CONFIG && success || failure
RETVAL=$?
ENVLISTUNSET=$(grep '^-' $CONFIG | sed "s/-export/unset/g" | cut -d'=' -f1)
eval ${ENVLISTUNSET}
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/$NAME
echo
return $RETVAL
}
stop(){
if [ -z "$CONFIG" ]; then
return 0
fi
[ -f /var/lock/subsys/$NAME ] || return 0
echo -n $"Stopping ${NAME} service: "
if [ -z "$PIDFILE" ]; then
killproc $DAEMON
else
killproc -p $PIDFILE $NAME
fi
echo
rm -f $PIDFILE
rm -f /var/lock/subsys/$NAME
}
case "$1" in
start)
start
;;
status)
if [ -z "$PIDFILE" ]; then
status $DAEMON
else
status -p $PIDFILE $NAME
fi
;;
stop)
stop
;;
restart)
if [[ -z "$2" || "$2" == "$NAME" ]]; then
stop
start
fi
;;
*)
echo $"Usage: $0 {start|stop|status|restart}"
esac
done
RETVAL=$?
exit $RETVAL