#!/bin/sh
#
# Init file for Barnyard2
#
#
# chkconfig: 2345 40 60
# description:  Barnyard2 is an output processor for snort.
#
# processname: barnyard2
# config: /etc/sysconfig/barnyard2
# config: /etc/barnyard2/barnyard2.conf

. /etc/rc.d/init.d/functions
. /etc/sysconfig/network

[ -r /etc/snort/snort.conf ] || exit 1

### Default variables
SYSCONFIG="/etc/sysconfig/barnyard2"

### Read configuration
[ -r "$SYSCONFIG" ] && . "$SYSCONFIG"

RETVAL=0
BARNYARDBIN="barnyard2"
LOCKFILE=/var/lock/subsys/barnyard2
PIDFILE=/var/run/barnyard2.pid

start() {
	ARCHIVEDIR="$SNORTDIR/archive"
	WALDO_FILE="$SNORTDIR/barnyard2.waldo"
	BARNYARD_OPTS="-D -c $CONF -d $SNORTDIR -w $WALDO_FILE -a $ARCHIVEDIR -f $LOG_FILE $EXTRA_ARGS"

	start_daemon --pidfile "$PIDFILE" --lockfile "$LOCKFILE" --expect-user root -- $BARNYARDBIN $BARNYARD_OPTS
	RETVAL=$?
	return $RETVAL
}

stop() {
	stop_daemon --pidfile "$PIDFILE" --lockfile "$LOCKFILE" --expect-user root -- $BARNYARDBIN
	RETVAL=$?
	rm -f $PIDFILE
	return $RETVAL
}

restart() {
	stop
	start
}

status0() {
	status --lockfile "$LOCKFILE" --pidfile "$PIDFILE" --expect-user root -- $BARNYARDBIN
	RETVAL=$?
	return $RETVAL
}

case "$1" in
	start)    start        ;;
	stop)     stop         ;;
	status)   status0      ;;
	restart)  restart      ;;
	*)
		msg_usage "${0##*/} {start|stop|restart|status}"
		RETVAL=1
esac

exit $RETVAL
