freebsd-skq/libexec/rc/rc.d/ipmon
Cy Schubert d19c1c8ec2 Allow forced start of ipmon in special cases where testing is desired
(or other special cases) and when ipfilter is disabled in rc.conf but
started by other means.

MFC after:	1 week
2018-11-22 04:48:27 +00:00

35 lines
728 B
Bash
Executable File

#!/bin/sh
#
# $FreeBSD$
#
# PROVIDE: ipmon
# REQUIRE: FILESYSTEMS hostname sysctl ipfilter
# BEFORE: SERVERS
# KEYWORD: nojail
. /etc/rc.subr
name="ipmon"
desc="Monitors /dev/ipl for logged packets"
rcvar="ipmon_enable"
command="/sbin/${name}"
start_precmd="ipmon_precmd"
ipmon_precmd()
{
# Continue only if ipfilter or ipnat is enabled and the
# ipfilter module is loaded.
#
if ! checkyesno ipfilter_enable && ! checkyesno ipnat_enable && ! checkyesno rc_force ; then
err 1 "${name} requires either ipfilter or ipnat enabled"
fi
if ! ${ipfilter_program:-/sbin/ipf} -V | grep -q 'Running: yes' >/dev/null 2>&1; then
err 1 "ipfilter module is not loaded"
fi
return 0
}
load_rc_config $name
run_rc_command "$1"