[BACK]Return to ipfilter CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / etc / rc.d

Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.

Diff for /src/etc/rc.d/ipfilter between version 1.2 and 1.10.4.2

version 1.2, 2000/03/11 20:10:21 version 1.10.4.2, 2004/11/12 06:44:17
Line 7 
Line 7 
 # REQUIRE: root beforenetlkm mountcritlocal tty  # REQUIRE: root beforenetlkm mountcritlocal tty
   
 . /etc/rc.subr  . /etc/rc.subr
 . /etc/rc.conf  
   
 name="ipfilter"  name="ipfilter"
   rcvar=$name
   start_precmd="ipfilter_prestart"
 start_cmd="ipfilter_start"  start_cmd="ipfilter_start"
 stop_precmd="checkyesno ipfilter && [ -f /etc/ipf.conf ]"  stop_precmd="test -f /etc/ipf.conf -o -f /etc/ipf6.conf"
 stop_cmd="ipfilter_stop"  stop_cmd="ipfilter_stop"
 reload_precmd="$stop_precmd"  reload_precmd="$stop_precmd"
 reload_cmd="ipfilter_reload"  reload_cmd="ipfilter_reload"
   resync_precmd="$stop_precmd"
   resync_cmd="ipfilter_resync"
   status_precmd="$stop_precmd"
   status_cmd="ipfilter_status"
   extra_commands="reload resync status"
   
 ipfilter_start()  ipfilter_prestart()
 {  {
         if ! checkyesno ipfilter; then          if [ ! -f /etc/ipf.conf ] && [ ! -f /etc/ipf6.conf ]; then
                 return 0                  warn "/etc/ipf*.conf not readable; ipfilter start aborted."
                           #
                           # If booting directly to multiuser, send SIGTERM to
                           # the parent (/etc/rc) to abort the boot
                           #
                   if [ "$autoboot" = yes ]; then
                           echo "ERROR: ABORTING BOOT (sending SIGTERM to parent)!"
                           kill -TERM $$
                           exit 1
                   fi
                   return 1
         fi          fi
           return 0
   }
   
         #       if /etc/ipf.conf isn't readable, abort the boot rather  ipfilter_start()
         #       than risk a security problem  {
         #  
         if [ ! -f /etc/ipf.conf ]; then  
                 err 1 "/etc/ipf.conf not readable; ipfilter start aborted."  
         fi  
         echo "Enabling ipfilter."          echo "Enabling ipfilter."
         /sbin/ipf -E -Fa -f /etc/ipf.conf          /sbin/ipf -E
           /sbin/ipf -Fa
           /sbin/ipf -6 -Fa
           if [ -f /etc/ipf.conf ]; then
                   /sbin/ipf -f /etc/ipf.conf
           fi
           if [ -f /etc/ipf6.conf ]; then
                   /sbin/ipf -6 -f /etc/ipf6.conf
           fi
 }  }
   
 ipfilter_stop()  ipfilter_stop()
Line 41  ipfilter_stop()
Line 63  ipfilter_stop()
 ipfilter_reload()  ipfilter_reload()
 {  {
         echo "Reloading ipfilter rules."          echo "Reloading ipfilter rules."
         /sbin/ipf -I -Fa -f /etc/ipf.conf  
         if [ $? -eq 0 ]; then          /sbin/ipf -I -Fa
                 /sbin/ipf -s          /sbin/ipf -6 -I -Fa
         else          if [ -f /etc/ipf.conf ] && ! /sbin/ipf -I -f /etc/ipf.conf; then
                 warn "Reload failed; not swapping to new ruleset."                  err 1 "reload of ipf.conf failed; not swapping to new ruleset."
         fi          fi
           if [ -f /etc/ipf6.conf ] && ! /sbin/ipf -I -6 -f /etc/ipf6.conf; then
                   err 1 "reload of ipf6.conf failed; not swapping to new ruleset."
           fi
           /sbin/ipf -s
   }
   
   ipfilter_resync()
   {
           /sbin/ipf -y
   }
   
   ipfilter_status()
   {
           /sbin/ipf -V
 }  }
   
 run_rc_command "$1" "reload"  load_rc_config $name
   run_rc_command "$1"

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.10.4.2

CVSweb <webmaster@jp.NetBSD.org>