Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 2 Oct 2025 14:25:35 GMT
From:      Kristof Provost <kp@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Subject:   git: c23b64fba9fb - main - netinet6 tests: accept an RA on an interface without /64 address
Message-ID:  <202510021425.592EPZ2i034185@gitrepo.freebsd.org>

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

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

commit c23b64fba9fb9715397a9e6ecbae670ee791dce9
Author:     Kristof Provost <kp@FreeBSD.org>
AuthorDate: 2025-10-02 11:47:33 +0000
Commit:     Kristof Provost <kp@FreeBSD.org>
CommitDate: 2025-10-02 13:33:17 +0000

    netinet6 tests: accept an RA on an interface without /64 address
    
    Excercise the code introduced in 9e792f7ef729
    ("sys/netinet6: Fix SLAAC for interfaces with no /64 LL address").
    
    Sponsored by:   Rubicon Communications, LLC ("Netgate")
---
 tests/sys/netinet6/ndp.sh | 39 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 39 insertions(+)

diff --git a/tests/sys/netinet6/ndp.sh b/tests/sys/netinet6/ndp.sh
index bac9764ee3c9..21a50cda02ba 100755
--- a/tests/sys/netinet6/ndp.sh
+++ b/tests/sys/netinet6/ndp.sh
@@ -188,9 +188,48 @@ ndp_slaac_default_route_cleanup() {
 	vnet_cleanup
 }
 
+atf_test_case "ndp_prefix_len_mismatch" "cleanup"
+ndp_prefix_len_mismatch_head() {
+	atf_set descr 'Test RAs on an interface without a /64 lladdr'
+	atf_set require.user root
+	atf_set require.progs python3 scapy
+}
+
+ndp_prefix_len_mismatch_body() {
+	vnet_init
+
+	epair=$(vnet_mkepair)
+
+	vnet_mkjail alcatraz ${epair}a
+
+	jexec alcatraz ifconfig ${epair}a inet6 -auto_linklocal
+	jexec alcatraz ifconfig ${epair}a inet6 -ifdisabled
+	jexec alcatraz ifconfig ${epair}a inet6 accept_rtadv
+	jexec alcatraz ifconfig ${epair}a inet6 fe80::5a9c:fcff:fe10:5d07/127
+	jexec alcatraz ifconfig ${epair}a up
+
+	ifconfig ${epair}b inet6 -ifdisabled
+	ifconfig ${epair}b up
+
+	atf_check -e ignore python3 $(atf_get_srcdir)/ra.py \
+	    --sendif ${epair}b \
+	    --dst $(ndp_if_lladdr ${epair}a alcatraz) \
+	    --src $(ndp_if_lladdr ${epair}b) \
+	    --prefix "2001:db8:ffff:1000::" --prefixlen 64
+
+	atf_check \
+	    -o match:"inet6 2001:db8:ffff:1000:.* prefixlen 64.*autoconf.*" \
+	    jexec alcatraz ifconfig ${epair}a
+}
+
+ndp_prefix_len_mismatch_cleanup() {
+	vnet_cleanup
+}
+
 atf_init_test_cases()
 {
 	atf_add_test_case "ndp_add_gu_success"
 	atf_add_test_case "ndp_del_gu_success"
 	atf_add_test_case "ndp_slaac_default_route"
+	atf_add_test_case "ndp_prefix_len_mismatch"
 }



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