From c34948e3219e4713d5eae5536229dadde5acaf65 Mon Sep 17 00:00:00 2001 From: darrenr Date: Sat, 20 Oct 2001 04:41:47 +0000 Subject: Allow ipnat_enable to be set to "yes" without requiring ipfiltre_enable to be set to "yes" PR: 25223 --- etc/rc.network | 27 ++++++++++++++++----------- 1 file changed, 16 insertions(+), 11 deletions(-) (limited to 'etc/rc.network') diff --git a/etc/rc.network b/etc/rc.network index 51c2926..340be28 100644 --- a/etc/rc.network +++ b/etc/rc.network @@ -85,17 +85,6 @@ network_pass1() { ${ipmon_program:-/sbin/ipmon} ${ipmon_flags} ;; esac - case "${ipnat_enable}" in - [Yy][Ee][Ss]) - if [ -r "${ipnat_rules}" ]; then - echo -n ' ipnat'; - eval ${ipnat_program:-/sbin/ipnat -CF -f} \ - "${ipnat_rules}" ${ipnat_flags} - else - echo -n ' NO IPNAT RULES' - fi - ;; - esac case "${ipfs_enable}" in [Yy][Ee][Ss]) if [ -r "/var/db/ipf/ipstate.ipf" ]; then @@ -109,6 +98,22 @@ network_pass1() { ipfilter_enable="NO" echo -n ' NO IPF RULES' fi + esac + case "${ipnat_enable}" in + [Yy][Ee][Ss]) + if [ "${ipfilter_in_kernel}" -eq 0 ] && kldload ipl; then + ipfilter_in_kernel=1 + echo "Kernel ipfilter module loaded." + elif [ "${ipfilter_in_kernel}" -eq 0 ]; then + echo "Warning: ipfilter kernel module failed to load." + fi + if [ -r "${ipnat_rules}" ]; then + echo -n ' ipnat'; + eval ${ipnat_program:-/sbin/ipnat -CF -f} \ + "${ipnat_rules}" ${ipnat_flags} + else + echo -n ' NO IPNAT RULES' + fi ;; esac -- cgit v1.1