NetBSD/usr.sbin/npf/npftest
christos 1c3e92696a npftest needs to disable mprotect because it uses bpfjit 2016-05-29 02:28:07 +00:00
..
libnpftest - Add npf_ruleset_export(), npf_rule_export() and npf_nat_policyexport(). 2014-08-10 19:09:43 +00:00
Makefile npftest needs to disable mprotect because it uses bpfjit 2016-05-29 02:28:07 +00:00
README npftest: add an example in the README, fix the total in npf_test_conc(). 2014-06-25 00:21:42 +00:00
npfstream.c NPF: add support for specifying the interfaces before they are attached. 2013-11-08 00:38:26 +00:00
npftest.c include proplib.h if you're going to useuseitit 2016-01-25 12:24:41 +00:00
npftest.conf NPF: add support for IPv6-to-IPv6 Network Prefix Translation (NPTv6), 2014-02-13 03:34:40 +00:00
npftest.h NPF: add support for IPv6-to-IPv6 Network Prefix Translation (NPTv6), 2014-02-13 03:34:40 +00:00

README

$NetBSD: README,v 1.6 2014/06/25 00:21:42 rmind Exp $

npftest - a tool for regression testing and debugging NPF.
It uses RUMP framework to run NPF kernel module in the userspace.

---

Test:

npfctl debug npftest.conf /tmp/npf.plist
npftest -c /tmp/npf.plist -t

Stream:

tcpdump -w stream.pcap -i $interface "host $host and tcp"
npfctl debug npftest.conf /tmp/npf.plist
npftest -c /tmp/npf.plist -s stream.pcap > stream_npf_data.txt

Preferably, use MALLOC_OPTIONS="AJ" and/or other facilities.

Benchmark:

npftest -b rule -c /tmp/npf.plist -p $ncpu

---

Update RUMP libraries once the kernel side has been changed.  Hint:

cd src/sys/net/npf
sudo make includes

cd src/sys/rump/net/lib/libnpf
make distclean
MKDEBUG=yes MKDEBUGLIB=yes DBG="-g -O2" make -j8
sudo MKDEBUG=yes MKDEBUGLIB=yes DBG="-g -O2" make install