Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 22 Oct 2021 12:32:44 GMT
From:      Kristof Provost <kp@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org
Subject:   git: 9365113e89a5 - stable/13 - pf tests: ensure that $nr expansion is correct
Message-ID:  <202110221232.19MCWij1038563@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch stable/13 has been updated by kp:

URL: https://cgit.FreeBSD.org/src/commit/?id=9365113e89a52ce025d4097a5986e2228234f5ca

commit 9365113e89a52ce025d4097a5986e2228234f5ca
Author:     Kristof Provost <kp@FreeBSD.org>
AuthorDate: 2021-10-03 16:07:04 +0000
Commit:     Kristof Provost <kp@FreeBSD.org>
CommitDate: 2021-10-22 07:34:33 +0000

    pf tests: ensure that $nr expansion is correct
    
    Test the $nr expansion in labels is correct, even if the optimiser
    reduces the rule count.
    
    MFC after:      1 week
    Differential Revision:  https://reviews.freebsd.org/D32489
    
    (cherry picked from commit 914ec9c78dcd5d8f77552fb93d3bc15efe9c0f40)
---
 tests/sys/netpfil/pf/Makefile |  1 +
 tests/sys/netpfil/pf/macro.sh | 40 ++++++++++++++++++++++++++++++++++++++++
 2 files changed, 41 insertions(+)

diff --git a/tests/sys/netpfil/pf/Makefile b/tests/sys/netpfil/pf/Makefile
index 2f9ce73f381b..246c267e7d2b 100644
--- a/tests/sys/netpfil/pf/Makefile
+++ b/tests/sys/netpfil/pf/Makefile
@@ -14,6 +14,7 @@ ATF_TESTS_SH+=	altq \
 		get_state \
 		icmp \
 		killstate \
+		macro \
 		map_e \
 		names \
 		nat \
diff --git a/tests/sys/netpfil/pf/macro.sh b/tests/sys/netpfil/pf/macro.sh
new file mode 100644
index 000000000000..442677c9f946
--- /dev/null
+++ b/tests/sys/netpfil/pf/macro.sh
@@ -0,0 +1,40 @@
+. $(atf_get_srcdir)/utils.subr
+
+atf_test_case "nr" "cleanup"
+nr_head()
+{
+	atf_set descr 'Test $nr expansion'
+	atf_set require.user root
+}
+
+nr_body()
+{
+	# Ensure that when the optimiser collapses rules the macro expansion
+	# has the correct rule number
+	pft_init
+
+	vnet_mkjail alcatraz
+	jexec alcatraz ifconfig lo0 inet 127.0.0.1/8
+	jexec alcatraz ifconfig lo0 inet 127.0.0.2/32 alias
+
+	pft_set_rules alcatraz \
+	    "pass quick on lo from lo:network to lo:network" \
+	    "block quick all label \"ruleNo:\$nr\""
+
+	no=$(jexec alcatraz pfctl -sr -vv | awk '/ruleNo/ { gsub("@", "", $1); print $1; }')
+	ruleno=$(jexec alcatraz pfctl -sr -vv | awk '/ruleNo/ { gsub(/"ruleNo:/, "", $7); gsub(/"/, "", $7); print $7; }')
+	if [ "${no}" -ne "${ruleno}" ];
+	then
+		atf_fail "Expected ruleNo $no != $ruleno"
+	fi
+}
+
+nr_cleanup()
+{
+	pft_cleanup
+}
+
+atf_init_test_cases()
+{
+	atf_add_test_case "nr"
+}



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202110221232.19MCWij1038563>