51da4b19be
are encountered at boot time: rcorder: requirement `ipfs' in file `/etc/rc.d/netif' has no providers. rcorder: requirement `ipfilter' in file `/etc/rc.d/netif' has no providers. rcorder: requirement `ipfilter' in file `/etc/rc.d/netwait' has no providers. rcorder: requirement `ipfilter' in file `/etc/rc.d/net_watchdog' has no providers. rcorder: requirement `ipfilter' in file `/etc/rc.d/securelevel' has no providers. Listing its own requrements in BEFORE rather than use REQUIRE of non-optional scripts resolves this issue. The issue was discovered and patched by glebius at Netflix. Submitted by: glebius Reported by: glebius MFC after: 1 week
35 lines
723 B
Bash
Executable File
35 lines
723 B
Bash
Executable File
#!/bin/sh
|
|
#
|
|
# $FreeBSD$
|
|
#
|
|
|
|
# PROVIDE: ipmon
|
|
# REQUIRE: FILESYSTEMS hostname sysctl
|
|
# BEFORE: SERVERS
|
|
# KEYWORD: nojailvnet
|
|
|
|
. /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"
|