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

Annotation of src/etc/rc.d/ipfilter, Revision 1.10

1.1       lukem       1: #!/bin/sh
                      2: #
1.10    ! lukem       3: # $NetBSD: ipfilter,v 1.9 2000/10/09 06:11:38 nisimura Exp $
1.1       lukem       4: #
                      5:
                      6: # PROVIDE: ipfilter
                      7: # REQUIRE: root beforenetlkm mountcritlocal tty
                      8:
                      9: . /etc/rc.subr
                     10:
                     11: name="ipfilter"
1.7       lukem      12: rcvar=$name
1.5       lukem      13: start_precmd="ipfilter_prestart"
1.1       lukem      14: start_cmd="ipfilter_start"
1.8       lukem      15: stop_precmd="test -f /etc/ipf.conf -o -f /etc/ipf6.conf"
1.1       lukem      16: stop_cmd="ipfilter_stop"
                     17: reload_precmd="$stop_precmd"
                     18: reload_cmd="ipfilter_reload"
1.10    ! lukem      19: resync_precmd="$stop_precmd"
        !            20: resync_cmd="ipfilter_resync"
1.5       lukem      21: status_precmd="$stop_precmd"
                     22: status_cmd="ipfilter_status"
1.10    ! lukem      23: extra_commands="reload resync status"
1.1       lukem      24:
1.5       lukem      25: ipfilter_prestart()
1.1       lukem      26: {
1.9       nisimura   27:        if [ ! -f /etc/ipf.conf ] && [ ! -f /etc/ipf6.conf ]; then
1.8       lukem      28:                warn "/etc/ipf*.conf not readable; ipfilter start aborted."
1.6       lukem      29:                        #
                     30:                        # If booting directly to multiuser, send SIGTERM to
                     31:                        # the parent (/etc/rc) to abort the boot
                     32:                        #
                     33:                if [ "$autoboot" = yes ]; then
                     34:                        echo "ERROR: ABORTING BOOT (sending SIGTERM to parent)!"
                     35:                        kill -TERM $$
                     36:                        exit 1
                     37:                fi
1.5       lukem      38:                return 1
1.1       lukem      39:        fi
1.5       lukem      40:        return 0
                     41: }
                     42:
                     43: ipfilter_start()
                     44: {
1.1       lukem      45:        echo "Enabling ipfilter."
1.8       lukem      46:        /sbin/ipf -E -Fa
                     47:        if [ -f /etc/ipf.conf ]; then
                     48:                /sbin/ipf -f /etc/ipf.conf
                     49:        fi
                     50:        if [ -f /etc/ipf6.conf ]; then
                     51:                /sbin/ipf -6 -f /etc/ipf6.conf
                     52:        fi
1.1       lukem      53: }
                     54:
                     55: ipfilter_stop()
                     56: {
                     57:        echo "Disabling ipfilter."
                     58:        /sbin/ipf -D
                     59: }
                     60:
                     61: ipfilter_reload()
                     62: {
                     63:        echo "Reloading ipfilter rules."
1.8       lukem      64:
                     65:        /sbin/ipf -I -Fa
                     66:        if [ -f /etc/ipf.conf ] && ! /sbin/ipf -I -f /etc/ipf.conf; then
                     67:                err 1 "reload of ipf.conf failed; not swapping to new ruleset."
                     68:        fi
                     69:        if [ -f /etc/ipf6.conf ] && ! /sbin/ipf -I -6 -f /etc/ipf6.conf; then
                     70:                err 1 "reload of ipf6.conf failed; not swapping to new ruleset."
1.1       lukem      71:        fi
1.8       lukem      72:        /sbin/ipf -s
1.10    ! lukem      73: }
        !            74:
        !            75: ipfilter_resync()
        !            76: {
        !            77:        /sbin/ipf -y
1.5       lukem      78: }
                     79:
                     80: ipfilter_status()
                     81: {
                     82:        /sbin/ipf -V
1.1       lukem      83: }
                     84:
1.4       lukem      85: load_rc_config $name
1.3       lukem      86: run_rc_command "$1"

CVSweb <webmaster@jp.NetBSD.org>