904beb9e16
in keeping the scripts under rc.d in sync with us. So, remove NetBSD specific stuff (which made our scripts more complicated than necessary). The NetBSD ident string will be left intact, both for history and also incase we wish to pull in future versions.
54 lines
1.0 KiB
Bash
Executable File
54 lines
1.0 KiB
Bash
Executable File
#!/bin/sh
|
|
#
|
|
# $NetBSD: ipfs,v 1.3 2002/02/11 13:55:42 lukem Exp $
|
|
# $FreeBSD$
|
|
#
|
|
|
|
# PROVIDE: ipfs
|
|
# REQUIRE: ipnat
|
|
# BEFORE: netif
|
|
# KEYWORD: FreeBSD shutdown
|
|
|
|
. /etc/rc.subr
|
|
|
|
name="ipfs"
|
|
rcvar=`set_rcvar`
|
|
start_cmd="ipfs_start"
|
|
stop_cmd="ipfs_stop"
|
|
start_precmd="ipfs_prestart"
|
|
|
|
ipfs_prestart()
|
|
{
|
|
# Do not continue if either ipnat or ipfilter is not enabled or
|
|
# if the ipfilter module is not loaded.
|
|
#
|
|
if ! checkyesno ipfilter_enable -o ! checkyesno ipnat_enable ; then
|
|
err 1 "${name} requires either ipfilter or ipnat enabled"
|
|
fi
|
|
if ! sysctl net.inet.ipf.fr_pass >/dev/null 2>&1; then
|
|
err 1 "ipfilter module is not loaded"
|
|
fi
|
|
return 0
|
|
}
|
|
|
|
ipfs_start()
|
|
{
|
|
if [ -r /var/db/ipf/ipstate.ipf -a -r /var/db/ipf/ipnat.ipf ]; then
|
|
${ipfs_program} -R ${rc_flags}
|
|
rm -f /var/db/ipf/ipstate.ipf /var/db/ipf/ipnat.ipf
|
|
fi
|
|
}
|
|
|
|
ipfs_stop()
|
|
{
|
|
if [ ! -d /var/db/ipf ]; then
|
|
mkdir /var/db/ipf
|
|
chmod 700 /var/db/ipf
|
|
chown root:wheel /var/db/ipf
|
|
fi
|
|
${ipfs_program} -W ${rc_flags}
|
|
}
|
|
|
|
load_rc_config $name
|
|
run_rc_command "$1"
|