xref: /freebsd/libexec/rc/rc.d/ippool (revision f04b23ce3547c238dcd52d4fa1a7d401ad38d1b1)
1d8f93710SCy Schubert#!/bin/sh
2d8f93710SCy Schubert#
3d8f93710SCy Schubert#
4d8f93710SCy Schubert
5d8f93710SCy Schubert# PROVIDE: ippool
6d8f93710SCy Schubert# REQUIRE: FILESYSTEMS
7d8f93710SCy Schubert# BEFORE:  ipfilter
8795be686SCy Schubert# KEYWORD: nojailvnet
9d8f93710SCy Schubert
10d8f93710SCy Schubert. /etc/rc.subr
11d8f93710SCy Schubert
12d8f93710SCy Schubertname="ippool"
13d8f93710SCy Schubertdesc="user interface to the IPFilter pools"
14d8f93710SCy Schubertrcvar="ippool_enable"
15d8f93710SCy Schubertload_rc_config $name
16f99f0ee1SAlexander Leidinger
17f99f0ee1SAlexander Leidinger# doesn't make sense to run in a svcj: config setting
18f99f0ee1SAlexander Leidingerippool_svcj="NO"
19f99f0ee1SAlexander Leidinger
20817c58e3SCy Schubertstart_precmd="ippool_start_precmd"
21d8f93710SCy Schubertstop_cmd="${ippool_program} -F"
22d8f93710SCy Schubertreload_cmd="ippool_reload"
23d8f93710SCy Schubertextra_commands="reload"
24d8f93710SCy Schubertrequired_files="${ippool_rules}"
25d8f93710SCy Schubertrequired_modules="ipl:ipfilter"
26d8f93710SCy Schubert
27817c58e3SCy Schubertippool_start_precmd()
28d8f93710SCy Schubert{
29817c58e3SCy Schubert	rc_flags="-f ${ippool_rules} ${rc_flags}"
30*f04b23ceSCy Schubert	if [ -n "${ipfilter_optionlist}" ]; then
31d5d005e9SCy Schubert		${ipfilter_program:-/sbin/ipf} -T "${ipfilter_optionlist}"
32d5d005e9SCy Schubert	fi
33d8f93710SCy Schubert}
34d8f93710SCy Schubert
35d8f93710SCy Schubertippool_reload()
36d8f93710SCy Schubert{
37d8f93710SCy Schubert	echo "Reloading IP Pools."
3829917358SCy Schubert	${stop_cmd}
3929917358SCy Schubert	${start_cmd}
40d8f93710SCy Schubert}
41d8f93710SCy Schubert
42d8f93710SCy Schubert
43d8f93710SCy Schubertrun_rc_command "$1"
44