#! /bin/sh
### BEGIN INIT INFO
# Provides:          sanewall
# Required-Start:    $network $local_fs $syslog
# Required-Stop:     $network $local_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Description: Starts sanewall firewall configuration
# short-description: sanewall firewall configuration
### END INIT INFO

#includes lsb functions
. /lib/lsb/init-functions

PATH=/sbin:/bin
NAME=sanewall
DESC=Firewall

test -x /sbin/sanewall || exit 0

set -e

[ -r /etc/default/sanewall ] && set -a && . /etc/default/sanewall

case "$START_SANEWALL" in
    NO|no)
	START_SANEWALL=NO
	;;
    *)
	START_SANEWALL=YES
	;;
esac

COMMAND="$1"
[ "$COMMAND" ] && shift

case "$COMMAND" in
    start)
	if [ "$START_SANEWALL" = "NO"  ]; then
	    log_warning_msg "$DESC disabled via /etc/default/sanewall"
	    exit 0
	else
	    log_daemon_msg "Starting $DESC" "$NAME"
	    /sbin/sanewall start "$@" >/dev/null || log_end_msg 1
	    log_end_msg 0
	fi
	;;

    stop)
	log_daemon_msg "Stopping $DESC" "$NAME"
	/sbin/sanewall stop "$@" >/dev/null || log_end_msg 1
	log_end_msg 0
	;;

    helpme|wizard)
	log_daemon_msg  "Starting $NAME wizard" 1>&2
	/sbin/sanewall wizard
	;;

    restart|force-reload)
	if [ "$START_SANEWALL" = "NO"  ]; then
	    log_warning_msg "$DESC disabled via /etc/default/sanewall"
	    exit 0
	else
	    log_daemon_msg "Restarting $DESC configuration"
	    /sbin/sanewall restart "$@" >/dev/null || log_end_msg 1
	    log_action_end_msg 0
	fi
	;;

    status)
	if [ "$START_SANEWALL" = "NO"  ]; then
	    log_failure_msg "$DESC disabled via /etc/default/sanewall"
	    exit 0
	else
	    log_success_msg "$DESC enabled via /etc/default/sanewall"
	    exit 4
	fi
	;;

    *)
	N=/etc/init.d/$NAME

	log_action_msg \
	"Usage: $N {start|stop|restart|force-reload|status} [<args>]" >&2
	exit 1
	;;
esac

exit 0

# End of file
