pf tests: Test PR259689

We didn't populate dyncnt/tblcnt, so `pfctl -sr -vv` might not have the
table element count.

PR:		259689
MFC after:	3 weeks
Sponsored by:	Rubicon Communications, LLC ("Netgate")
Differential Revision:	https://reviews.freebsd.org/D32893
This commit is contained in:
Kristof Provost 2021-11-08 13:28:43 +01:00
parent 218a8a491c
commit 2de49deeca
2 changed files with 30 additions and 1 deletions

View File

@ -294,7 +294,7 @@ pf_nvaddr_wrap_to_addr_wrap(const nvlist_t *nvl, struct pf_addr_wrap *addr)
if (addr->type == PF_ADDR_DYNIFTL) {
strlcpy(addr->v.ifname, nvlist_get_string(nvl, "ifname"),
IFNAMSIZ);
addr->p.dyncnt = nvlist_get_number(nvl, "dynctl");
addr->p.dyncnt = nvlist_get_number(nvl, "dyncnt");
}
if (addr->type == PF_ADDR_TABLE) {
strlcpy(addr->v.tblname, nvlist_get_string(nvl, "tblname"),

View File

@ -214,6 +214,34 @@ network_cleanup()
pft_cleanup
}
atf_test_case "pr259689" "cleanup"
pr259689_head()
{
atf_set descr 'Test PR 259689'
atf_set require.user root
}
pr259689_body()
{
pft_init
vnet_mkjail alcatraz
jexec alcatraz pfctl -e
pft_set_rules alcatraz \
"pass in" \
"block in inet from { 1.1.1.1, 1.1.1.2, 2.2.2.2, 2.2.2.3, 4.4.4.4, 4.4.4.5 }"
atf_check -o match:'block drop in inet from <__automatic_.*:6> to any' \
-e ignore \
jexec alcatraz pfctl -sr -vv
}
pr259689_cleanup()
{
pft_cleanup
}
atf_init_test_cases()
{
atf_add_test_case "v4_counters"
@ -221,4 +249,5 @@ atf_init_test_cases()
atf_add_test_case "pr251414"
atf_add_test_case "automatic"
atf_add_test_case "network"
atf_add_test_case "pr259689"
}