summaryrefslogtreecommitdiffstats
path: root/etc/rc.d/natd
diff options
context:
space:
mode:
authorandre <andre@FreeBSD.org>2004-10-22 19:36:03 +0000
committerandre <andre@FreeBSD.org>2004-10-22 19:36:03 +0000
commitde991565df6c114c1bf6226d9f0669b86f34f29e (patch)
tree6ea21afbd1aa55dd3d3a4036b702f395f64e7638 /etc/rc.d/natd
parent42e8443fa12c4dfd597d1594bd94294ed7cdc0ca (diff)
downloadFreeBSD-src-de991565df6c114c1bf6226d9f0669b86f34f29e.zip
FreeBSD-src-de991565df6c114c1bf6226d9f0669b86f34f29e.tar.gz
Automatically load the ipdivert module if it was not compiled into the kernel
and natd_enable is true.
Diffstat (limited to 'etc/rc.d/natd')
-rw-r--r--etc/rc.d/natd13
1 files changed, 13 insertions, 0 deletions
diff --git a/etc/rc.d/natd b/etc/rc.d/natd
index 4bfdcfc..60e9e15 100644
--- a/etc/rc.d/natd
+++ b/etc/rc.d/natd
@@ -12,8 +12,21 @@
name="natd"
rcvar=`set_rcvar`
command="/sbin/${name}"
+start_precmd="natd_precmd"
start_cmd="natd_start"
+natd_precmd()
+{
+ if ! ${SYSCTL} net.inet.divert > /dev/null 2>&1; then
+ if ! kldload ipdivert; then
+ warn unable to load IPDIVERT module.
+ return 1
+ fi
+ fi
+
+ return 0
+}
+
natd_start()
{
dhcp_list="`list_net_interfaces dhcp`"
OpenPOWER on IntegriCloud