This change allows user to define table inside the anchor like that:
authorsashan <sashan@openbsd.org>
Sun, 14 Jul 2024 19:51:08 +0000 (19:51 +0000)
committersashan <sashan@openbsd.org>
Sun, 14 Jul 2024 19:51:08 +0000 (19:51 +0000)
commit30269bc36232bcd9f090b0942bef5b07f31670a6
tree0a12309a8f262012178f518d6c5a258ba463a2c4
parent3bf986300769fd2e5bfa6f112ebaf40b2ccc4a7e
This change allows user to define table inside the anchor like that:
anchor foo {
table <bar> { 192.168.1.1 }
pass in from <bar> to <self>
}
Without this diff one must either create table <bar> in main
ruleset (root) or use 'pfctl -a foo -t bar -T add 192.168.1.1'
This glitch is hard to notice. Not many human admins try to attach
tables to non-global anchors. Deamons which configure pf(4) automatically
at run time such as relayd(8) and spamd(8) create tables attached to
thair anchors (for example 'relayd/*') but the deamons use way similar
to pfctl(8) to add and manage those tables.

The reason why I'd like to seal this gap is that my long term goal
is to turn global `pfr_ktable` in pf(4) into member of pf_anchor.
So each ruleset will get its own tree of tables.

feedback and OK bluhm@
sbin/pfctl/parse.y
sbin/pfctl/pfctl.c
sbin/pfctl/pfctl.h
sbin/pfctl/pfctl_optimize.c
sbin/pfctl/pfctl_parser.h
sbin/pfctl/pfctl_radix.c
sbin/pfctl/pfctl_table.c