#!/bin/sh
#
# Startup script for psad
#
# chkconfig: 345 99 05
# description: The Port Scan Attack Detector (psad)
# processname: psad
# pidfile: /var/run/psad.pid
# config: /etc/psad/psad.conf
#

# Source function library.
. /etc/rc.d/init.d/functions

restart() {
    $0 stop
    $0 start
}

# See how we were called.
case "$1" in
start)
    gprintf "Starting psad: "
    ### psad enables signature matching and auto
    ### danger level assignment by default, so
    ### command line args are not necessary here.
    daemon /usr/sbin/psad
    RETVAL=$?
    echo
    if [ $RETVAL -eq 0 ]; then
        touch /var/lock/subsys/psad
    fi
    ;;
stop)
    gprintf "Shutting down the psad psadwatchd daemon: "
        killproc psadwatchd
        echo
        gprintf "Shutting down the psad daemon: "
        killproc psad
    RETVAL=$?
    [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/psad
    echo
    if [ -f /var/run/psad/kmsgsd.pid ]; then
        gprintf "Shutting down the psad kmsgsd daemon: "
        killproc kmsgsd
        echo
    fi
    ;;
status)
    if [ -f /var/run/psad/kmsgsd.pid ]; then
        status kmsgsd
    fi
    status psad
    status psadwatchd
    ;;
restart|reload)
    restart
    ;;
condrestart)
    [ -f /var/lock/subsys/psad ] && restart || :
    ;;
*)
    gprintf "Usage: psad {start|stop|status|restart|reload|condrestart}\n"
    exit 1
esac
