#!/bin/sh
#
# $FreeBSD: head/security/zeek/files/zeek.in 554309 2020-11-06 18:38:46Z leres $
#

# PROVIDE: zeek
# REQUIRE: NETWORKING
# REQUIRE: LOGIN FILESYSTEMS
# KEYWORD: shutdown

. /etc/rc.subr

name="zeek"
rcvar=`set_rcvar`
node=$2

start_cmd="zeek_start"
stop_cmd="zeek_stop"
restart_cmd="zeek_restart"
check_cmd="zeek_check"
deploy_cmd="zeek_deploy"
install_cmd="zeek_install"
cleanup_cmd="zeek_cleanup"
restart_cmd="zeek_restart"
status_cmd="zeek_status"

extra_commands="check cleanup deploy install restart status"

: ${zeekctl_program:=%%PREFIX%%/bin/zeekctl}
: ${zeek_user:=root}

zeek_enable=${zeek_enable-"NO"}

run()
{
	if [ "${zeek_user}" = "root" ]; then
		$*
	else
		su -m ${zeek_user} -c "$*"
	fi
}

zeek_start()
{
	if [ ! "${node}" ]; then
		run ${zeekctl_program} start
	else
		run ${zeekctl_program} start ${node}
	fi
}

zeek_stop()
{
	if [ ! "${node}" ]; then
		run ${zeekctl_program} stop
	else
		run ${zeekctl_program} stop ${node}
	fi
}

zeek_restart() {
	if [ ! "${node}" ]; then
		run ${zeekctl_program} restart
	else
		run ${zeekctl_program} restart ${node}
	fi
}

zeek_check()
{
	run ${zeekctl_program} check
}

zeek_deploy()
{
	run ${zeekctl_program} deploy
}

zeek_install()
{
	run ${zeekctl_program} install
}

zeek_cleanup()
{
	if [ ! "${node}" ]; then
		run ${zeekctl_program} cleanup
	else
		run ${zeekctl_program} cleanup ${node}
	fi
}

zeek_status()
{
	run ${zeekctl_program} status
}

load_rc_config ${name}
run_rc_command "$1"