1 1.1 rmind #!/bin/sh 2 1.1 rmind # 3 1.7 martin # $NetBSD: npf,v 1.7 2020/09/08 12:52:18 martin Exp $ 4 1.1 rmind # 5 1.1 rmind # Public Domain. 6 1.1 rmind # 7 1.1 rmind 8 1.1 rmind # PROVIDE: npf 9 1.7 martin # REQUIRE: root bootconf CRITLOCALMOUNTED tty network 10 1.1 rmind # BEFORE: NETWORKING 11 1.1 rmind 12 1.1 rmind $_rc_subr_loaded . /etc/rc.subr 13 1.1 rmind 14 1.1 rmind name="npf" 15 1.1 rmind rcvar=$name 16 1.1 rmind 17 1.1 rmind config="/etc/npf.conf" 18 1.1 rmind 19 1.1 rmind start_cmd="npf_start" 20 1.1 rmind stop_cmd="npf_stop" 21 1.1 rmind 22 1.1 rmind reload_cmd="npf_reload" 23 1.1 rmind status_cmd="npf_status" 24 1.1 rmind extra_commands="reload status" 25 1.1 rmind 26 1.1 rmind npf_cfg_check() 27 1.1 rmind { 28 1.1 rmind if [ ! -f ${config} ]; then 29 1.1 rmind warn "${config} is not readable; failed." 30 1.5 skrll exit 1 31 1.1 rmind fi 32 1.1 rmind } 33 1.1 rmind 34 1.1 rmind npf_start() 35 1.1 rmind { 36 1.1 rmind echo "Enabling NPF." 37 1.1 rmind npf_cfg_check 38 1.3 mrg /sbin/npfctl reload 39 1.4 leot 40 1.4 leot # The npf_boot script has enabled npf already. 41 1.4 leot if [ "$autoboot" != "yes" ]; then 42 1.4 leot /sbin/npfctl start 43 1.4 leot fi 44 1.1 rmind } 45 1.1 rmind 46 1.1 rmind npf_stop() 47 1.1 rmind { 48 1.1 rmind echo "Disabling NPF." 49 1.3 mrg /sbin/npfctl stop 50 1.3 mrg /sbin/npfctl flush 51 1.1 rmind } 52 1.1 rmind 53 1.1 rmind npf_reload() 54 1.1 rmind { 55 1.1 rmind echo "Reloading NPF ruleset." 56 1.1 rmind npf_cfg_check 57 1.3 mrg /sbin/npfctl reload 58 1.1 rmind } 59 1.1 rmind 60 1.1 rmind npf_status() 61 1.1 rmind { 62 1.2 jmcneill : 63 1.1 rmind } 64 1.1 rmind 65 1.1 rmind load_rc_config $name 66 1.1 rmind run_rc_command "$1" 67