Module Name: src Committed By: martin Date: Sat Jun 20 15:46:48 UTC 2020
Modified Files: src/lib/libnpf [netbsd-9]: libnpf.3 npf.c npf.h src/sys/net/npf [netbsd-9]: files.npf npf.c npf.h npf_alg.c npf_alg_icmp.c npf_conf.c npf_conn.c npf_conn.h npf_conndb.c npf_connkey.c npf_ctl.c npf_ext_log.c npf_ext_normalize.c npf_ext_rndblock.c npf_handler.c npf_if.c npf_ifaddr.c npf_impl.h npf_inet.c npf_mbuf.c npf_nat.c npf_os.c npf_params.c npf_portmap.c npf_rproc.c npf_ruleset.c npf_sendpkt.c npf_state.c npf_state_tcp.c npf_tableset.c npf_worker.c npfkern.h src/tests/net/npf [netbsd-9]: t_npf.sh src/usr.sbin/npf [netbsd-9]: npf-params.7 src/usr.sbin/npf/npfctl [netbsd-9]: Makefile npf.conf.5 npf_bpf_comp.c npf_build.c npf_parse.y npf_scan.l npf_show.c npf_var.c npf_var.h npfctl.8 npfctl.c npfctl.h src/usr.sbin/npf/npftest [netbsd-9]: npftest.c npftest.conf npftest.h src/usr.sbin/npf/npftest/libnpftest [netbsd-9]: Makefile npf_mbuf_subr.c npf_nat_test.c npf_state_test.c npf_test.h npf_test_subr.c Added Files: src/usr.sbin/npf/npfctl [netbsd-9]: npf_cmd.c src/usr.sbin/npf/npftest/libnpftest [netbsd-9]: npf_gc_test.c Removed Files: src/usr.sbin/npf/npftest/libnpftest [netbsd-9]: npf_conn_test.c Log Message: Pull up following revision(s) (requested by rmind in ticket #956): usr.sbin/npf/npf-params.7: revision 1.4 sys/net/npf/npf_worker.c: revision 1.9 usr.sbin/npf/npftest/npftest.h: revision 1.17 usr.sbin/npf/npfctl/npf_bpf_comp.c: revision 1.16 usr.sbin/npf/npf-params.7: revision 1.5 sys/net/npf/npf_state_tcp.c: revision 1.21 usr.sbin/npf/npfctl/npf_build.c: revision 1.55 usr.sbin/npf/npf-params.7: revision 1.6 sys/net/npf/npfkern.h: revision 1.5 lib/libnpf/npf.c: revision 1.49 usr.sbin/npf/npf-params.7: revision 1.7 sys/net/npf/npf_impl.h: revision 1.81 sys/net/npf/npf_ext_log.c: revision 1.17 usr.sbin/npf/npfctl/npfctl.h: revision 1.53 usr.sbin/npf/npftest/libnpftest/npf_mbuf_subr.c: revision 1.11 sys/net/npf/npf_nat.c: revision 1.50 sys/net/npf/npf_mbuf.c: revision 1.24 sys/net/npf/npf_alg.c: revision 1.22 usr.sbin/npf/npftest/libnpftest/npf_nat_test.c: revision 1.14 usr.sbin/npf/npftest/libnpftest/npf_conn_test.c: file removal usr.sbin/npf/npftest/libnpftest/npf_state_test.c: revision 1.10 sys/net/npf/npf.h: revision 1.63 usr.sbin/npf/npftest/libnpftest/npf_test.h: revision 1.21 usr.sbin/npf/npfctl/npf_var.c: revision 1.13 sys/net/npf/files.npf: revision 1.23 usr.sbin/npf/npfctl/npf_show.c: revision 1.32 usr.sbin/npf/npfctl/npf.conf.5: revision 1.91 sys/net/npf/npf_os.c: revision 1.18 sys/net/npf/npf_connkey.c: revision 1.2 sys/net/npf/npf_conf.c: revision 1.17 lib/libnpf/libnpf.3: revision 1.12 usr.sbin/npf/npftest/npftest.c: revision 1.25 usr.sbin/npf/npftest/libnpftest/npf_gc_test.c: revision 1.1 usr.sbin/npf/npfctl/npf_parse.y: revision 1.51 sys/net/npf/npf_tableset.c: revision 1.35 usr.sbin/npf/npftest/npftest.conf: revision 1.9 sys/net/npf/npf_sendpkt.c: revision 1.22 usr.sbin/npf/npfctl/npf_var.h: revision 1.10 sys/net/npf/npf_state.c: revision 1.23 sys/net/npf/npf_conn.h: revision 1.20 usr.sbin/npf/npfctl/npfctl.c: revision 1.64 usr.sbin/npf/npfctl/npf_cmd.c: revision 1.1 sys/net/npf/npf_portmap.c: revision 1.5 sys/net/npf/npf_params.c: revision 1.3 usr.sbin/npf/npfctl/npf_scan.l: revision 1.32 tests/net/npf/t_npf.sh: revision 1.4 sys/net/npf/npf_ext_rndblock.c: revision 1.9 lib/libnpf/npf.h: revision 1.39 sys/net/npf/npf_ruleset.c: revision 1.51 sys/net/npf/npf_alg_icmp.c: revision 1.33 sys/net/npf/npf.c: revision 1.43 usr.sbin/npf/npftest/libnpftest/npf_test_subr.c: revision 1.17 usr.sbin/npf/npfctl/npfctl.8: revision 1.25 sys/net/npf/npf_ctl.c: revision 1.60 usr.sbin/npf/npftest/libnpftest/npf_test_subr.c: revision 1.18 usr.sbin/npf/npftest/libnpftest/Makefile: revision 1.11 sys/net/npf/npf_handler.c: revision 1.49 sys/net/npf/npf_inet.c: revision 1.57 sys/net/npf/npf_ifaddr.c: revision 1.7 sys/net/npf/npf_conndb.c: revision 1.9 sys/net/npf/npf_if.c: revision 1.13 usr.sbin/npf/npfctl/Makefile: revision 1.15 sys/net/npf/npf_conn.c: revision 1.32 sys/net/npf/npf_ext_normalize.c: revision 1.10 sys/net/npf/npf_rproc.c: revision 1.20 sys/net/npf/npf_worker.c: revision 1.8 Major NPF improvements (merge from upstream): - Switch to the C11-style atomic primitives using atomic_loadstore(9). - npfkern: introduce the 'state.key.interface' and 'state.key.direction' settings. Users can now choose whether the connection state should be strictly per-interface or global at the configuration level. Keep NAT logic to be always per-interface, though. - npfkern: rewrite the G/C worker logic and make it self-tuning. - npfkern and libnpf: multiple bug fixes; add param exporting; introduce more parameters. Remove npf_nvlist_{copyin,copyout}() functions and refactor npfctl_load_nvlist() with others; add npfctl_run_op() to have a single entry point for operations. Introduce npf_flow_t and clean up some code. - npfctl: lots of fixes for the 'npfctl show' logic; make 'npfctl list' more informative; misc usability improvements and more user-friendly error messages. - Amend and improve the manual pages. npf_worker_sys{init,fini}: initialize/destroy the exit_cv condvar. npftest -- npf_test_init(): add a workaround for NetBSD. npf-params(7): fix the state.key defaults. npf-params.7: s/filer/filter/ Adjust to "npfctl debug" command line changes, from rmind@. Use more markup. To generate a diff of this commit: cvs rdiff -u -r1.9.2.2 -r1.9.2.3 src/lib/libnpf/libnpf.3 cvs rdiff -u -r1.46.2.2 -r1.46.2.3 src/lib/libnpf/npf.c cvs rdiff -u -r1.36.2.2 -r1.36.2.3 src/lib/libnpf/npf.h cvs rdiff -u -r1.22 -r1.22.2.1 src/sys/net/npf/files.npf \ src/sys/net/npf/npf_state.c cvs rdiff -u -r1.38.2.3 -r1.38.2.4 src/sys/net/npf/npf.c cvs rdiff -u -r1.60.2.2 -r1.60.2.3 src/sys/net/npf/npf.h cvs rdiff -u -r1.20.2.1 -r1.20.2.2 src/sys/net/npf/npf_alg.c cvs rdiff -u -r1.32 -r1.32.2.1 src/sys/net/npf/npf_alg_icmp.c cvs rdiff -u -r1.13.2.3 -r1.13.2.4 src/sys/net/npf/npf_conf.c cvs rdiff -u -r1.27.2.3 -r1.27.2.4 src/sys/net/npf/npf_conn.c cvs rdiff -u -r1.16.2.3 -r1.16.2.4 src/sys/net/npf/npf_conn.h cvs rdiff -u -r1.6.2.1 -r1.6.2.2 src/sys/net/npf/npf_conndb.c cvs rdiff -u -r1.1 -r1.1.2.1 src/sys/net/npf/npf_connkey.c cvs rdiff -u -r1.54.2.4 -r1.54.2.5 src/sys/net/npf/npf_ctl.c cvs rdiff -u -r1.15 -r1.15.4.1 src/sys/net/npf/npf_ext_log.c cvs rdiff -u -r1.9 -r1.9.4.1 src/sys/net/npf/npf_ext_normalize.c cvs rdiff -u -r1.8 -r1.8.4.1 src/sys/net/npf/npf_ext_rndblock.c cvs rdiff -u -r1.46.2.2 -r1.46.2.3 src/sys/net/npf/npf_handler.c cvs rdiff -u -r1.9.4.2 -r1.9.4.3 src/sys/net/npf/npf_if.c cvs rdiff -u -r1.5.4.1 -r1.5.4.2 src/sys/net/npf/npf_ifaddr.c cvs rdiff -u -r1.75.2.4 -r1.75.2.5 src/sys/net/npf/npf_impl.h cvs rdiff -u -r1.54.2.2 -r1.54.2.3 src/sys/net/npf/npf_inet.c cvs rdiff -u -r1.22 -r1.22.4.1 src/sys/net/npf/npf_mbuf.c cvs rdiff -u -r1.46.2.3 -r1.46.2.4 src/sys/net/npf/npf_nat.c cvs rdiff -u -r1.12.2.3 -r1.12.2.4 src/sys/net/npf/npf_os.c cvs rdiff -u -r1.1.2.1 -r1.1.2.2 src/sys/net/npf/npf_params.c cvs rdiff -u -r1.3.2.1 -r1.3.2.2 src/sys/net/npf/npf_portmap.c \ src/sys/net/npf/npfkern.h cvs rdiff -u -r1.19 -r1.19.2.1 src/sys/net/npf/npf_rproc.c cvs rdiff -u -r1.48.2.2 -r1.48.2.3 src/sys/net/npf/npf_ruleset.c cvs rdiff -u -r1.21 -r1.21.4.1 src/sys/net/npf/npf_sendpkt.c cvs rdiff -u -r1.20 -r1.20.2.1 src/sys/net/npf/npf_state_tcp.c cvs rdiff -u -r1.33.2.1 -r1.33.2.2 src/sys/net/npf/npf_tableset.c cvs rdiff -u -r1.6.4.1 -r1.6.4.2 src/sys/net/npf/npf_worker.c cvs rdiff -u -r1.3 -r1.3.6.1 src/tests/net/npf/t_npf.sh cvs rdiff -u -r1.2.2.1 -r1.2.2.2 src/usr.sbin/npf/npf-params.7 cvs rdiff -u -r1.13.2.1 -r1.13.2.2 src/usr.sbin/npf/npfctl/Makefile cvs rdiff -u -r1.88.2.1 -r1.88.2.2 src/usr.sbin/npf/npfctl/npf.conf.5 cvs rdiff -u -r1.13.2.2 -r1.13.2.3 src/usr.sbin/npf/npfctl/npf_bpf_comp.c cvs rdiff -u -r1.50.2.3 -r1.50.2.4 src/usr.sbin/npf/npfctl/npf_build.c cvs rdiff -u -r0 -r1.1.2.2 src/usr.sbin/npf/npfctl/npf_cmd.c cvs rdiff -u -r1.49.2.1 -r1.49.2.2 src/usr.sbin/npf/npfctl/npf_parse.y cvs rdiff -u -r1.29.2.2 -r1.29.2.3 src/usr.sbin/npf/npfctl/npf_scan.l cvs rdiff -u -r1.28.2.3 -r1.28.2.4 src/usr.sbin/npf/npfctl/npf_show.c cvs rdiff -u -r1.12 -r1.12.2.1 src/usr.sbin/npf/npfctl/npf_var.c cvs rdiff -u -r1.9 -r1.9.2.1 src/usr.sbin/npf/npfctl/npf_var.h cvs rdiff -u -r1.21.2.1 -r1.21.2.2 src/usr.sbin/npf/npfctl/npfctl.8 cvs rdiff -u -r1.60.2.2 -r1.60.2.3 src/usr.sbin/npf/npfctl/npfctl.c cvs rdiff -u -r1.48.2.3 -r1.48.2.4 src/usr.sbin/npf/npfctl/npfctl.h cvs rdiff -u -r1.24 -r1.24.2.1 src/usr.sbin/npf/npftest/npftest.c cvs rdiff -u -r1.7.2.1 -r1.7.2.2 src/usr.sbin/npf/npftest/npftest.conf cvs rdiff -u -r1.16 -r1.16.2.1 src/usr.sbin/npf/npftest/npftest.h cvs rdiff -u -r1.10 -r1.10.2.1 src/usr.sbin/npf/npftest/libnpftest/Makefile cvs rdiff -u -r1.2.2.1 -r0 \ src/usr.sbin/npf/npftest/libnpftest/npf_conn_test.c cvs rdiff -u -r0 -r1.1.2.2 src/usr.sbin/npf/npftest/libnpftest/npf_gc_test.c cvs rdiff -u -r1.9.2.1 -r1.9.2.2 \ src/usr.sbin/npf/npftest/libnpftest/npf_mbuf_subr.c cvs rdiff -u -r1.12.2.1 -r1.12.2.2 \ src/usr.sbin/npf/npftest/libnpftest/npf_nat_test.c cvs rdiff -u -r1.9 -r1.9.2.1 \ src/usr.sbin/npf/npftest/libnpftest/npf_state_test.c cvs rdiff -u -r1.19 -r1.19.2.1 src/usr.sbin/npf/npftest/libnpftest/npf_test.h cvs rdiff -u -r1.15.2.1 -r1.15.2.2 \ src/usr.sbin/npf/npftest/libnpftest/npf_test_subr.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.