From nobody Tue Apr 08 17:35:00 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXCrj5CV1z5shWq; Tue, 08 Apr 2025 17:35:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXCrh6w7Hz3JsF; Tue, 08 Apr 2025 17:35:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744133701; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=I3gQBeIb9mf9SG8QsCQkU+S3R1rbyN4904uqxH0w+6I=; b=vBGyY8Kk17esF7lwtySi6982YrqIIyVamgxw+FQ78aNIXzgpkevVSFD4cB1GQqAc6/5D8q JreJABltBymz+HL10lhGmWdhg1NTaMjReIHLS+xTYP4alzGEA3+NY/a5SL47NuMOktFHGq t+4Ji25Tt5RG54oOfQvJDiKqhnzWC4tqLmE5Dmk6u6zRrdIofDfNL9n5ziLvjqtCHM6Eom tRPlUR8J6zL3ESDUZLz5qI29vgvSv9bnK2c9Ok54NDxQsHKcTdEcPDbocSRbzxvL8OvvMS WTZwhiQvl/k5CBA6OgKBLx4B3tN6mkDY5GmvJKYiHOR0K5aY7IGkR95wTUCIfw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744133701; a=rsa-sha256; cv=none; b=jJvC7CG8w5Y9AVRBhudWDNc98vIFCJfhqAesSfFz8HcWX+zzaqxBWK9nX3M8DpUTsAXkBj 9D90A4xxfBvNrl7TlvTeYqZPKhnFXfYeqCeboQ7XpHWP5tlXIDdFnNuzqAAKHGv9tv0+jz uY+ZMmih7zh1H0WIwICfYPsD+DT8DYSAiijgcFu3KdUEhTJTXEFdvU0HbWDqhnqFIn5d8T v1+VDRoXMH74bIVVxP9Az8ZXFWVGO7wFlwC5Uacvsb5HApXzt/QrTCMrTO8NlhsLhFZur5 NfAQIS9/x27EtfjsB1GiZOHaYoINZbmCnOMFonFSEhhzCx5USenCeerMCvNcMQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744133701; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=I3gQBeIb9mf9SG8QsCQkU+S3R1rbyN4904uqxH0w+6I=; b=Q2VxUcsY+0UHMwA5WfhYZqBQfkCg+r1ompru0KTfoaq4UWmuZFO1JhMMf76xZ8VGh0xz98 uea6o9bOR2phXFCm6lSg7sTYNldn5QEpW4fwnyAVoNDorGtqO3tYtKwjuiGyOVVzckU4cW FbhBYlL9hQuHQMTufeZDANh1PYyBZ9mq8lCbX3lbLunfqnhnFcqV3Rq+kEbh6vkjpukH9C a2mHEYqzMitJrkPoTQX1jXEIO7vE+NXypbv62QN+uL/mrwJyeFLZPam6ng9eF6HocoaD8d wn4FfeRjJCBvxi1PkciNn7fGRTD1ifSRhc/i+R5fD8K+8/RfiabwrmDsl3ENlA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXCrh2xfszjBR; Tue, 08 Apr 2025 17:35:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538HZ07N067974; Tue, 8 Apr 2025 17:35:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538HZ01x067971; Tue, 8 Apr 2025 17:35:00 GMT (envelope-from git) Date: Tue, 8 Apr 2025 17:35:00 GMT Message-Id: <202504081735.538HZ01x067971@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: 423a21a5b65c - main - libc/tests: getaddrinfo_test: use VNET jails for testing List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 423a21a5b65cc7b7809d29c4d40a8ca4a224a3f5 Auto-Submitted: auto-generated The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=423a21a5b65cc7b7809d29c4d40a8ca4a224a3f5 commit 423a21a5b65cc7b7809d29c4d40a8ca4a224a3f5 Author: K Rin AuthorDate: 2025-04-06 05:04:43 +0000 Commit: Gleb Smirnoff CommitDate: 2025-04-08 16:54:58 +0000 libc/tests: getaddrinfo_test: use VNET jails for testing --- lib/libc/tests/net/getaddrinfo/getaddrinfo_test.sh | 128 ++++++++++----------- 1 file changed, 59 insertions(+), 69 deletions(-) diff --git a/lib/libc/tests/net/getaddrinfo/getaddrinfo_test.sh b/lib/libc/tests/net/getaddrinfo/getaddrinfo_test.sh index e21cf0b57e60..dd17ab2e3f4a 100755 --- a/lib/libc/tests/net/getaddrinfo/getaddrinfo_test.sh +++ b/lib/libc/tests/net/getaddrinfo/getaddrinfo_test.sh @@ -29,20 +29,24 @@ # SUCH DAMAGE. # -IP6ADDRCTL_CMD="/usr/sbin/ip6addrctl" -CURRENT_POLICY_FILE="current.conf" +if [ "$(sysctl -i -n kern.features.vimage)" != 1 ]; then + atf_skip "This test requires VIMAGE" +fi -policy_backup() +vnet_mkjail() { - "${IP6ADDRCTL_CMD}" > "${CURRENT_POLICY_FILE}" + jailname=getaddrinfo_test_$1 + jail -c name=${jailname} persist vnet + ifconfig -j ${jailname} lo0 inet 127.0.0.1/8 + # For those machines not support IPv6 + ifconfig -j ${jailname} lo0 inet6 ::1/64 || true + service -j ${jailname} ip6addrctl $2 || true } -policy_cleanup() +vnet_cleanup() { - if [ -f "${CURRENT_POLICY_FILE}" ]; then - "${IP6ADDRCTL_CMD}" flush - cat "${CURRENT_POLICY_FILE}" | tail -n +2 | "${IP6ADDRCTL_CMD}" install /dev/stdin - fi + jailname=getaddrinfo_test_$1 + jail -r ${jailname} } check_output() @@ -91,9 +95,8 @@ basic_prefer_v4_head() } basic_prefer_v4_body() { - policy_backup - /etc/rc.d/ip6addrctl prefer_ipv4 - TEST=$(atf_get_srcdir)/h_gai + vnet_mkjail basic_prefer_v4 prefer_ipv4 + TEST="jexec getaddrinfo_test_basic_prefer_v4 $(atf_get_srcdir)/h_gai" ( $TEST ::1 http $TEST 127.0.0.1 http @@ -109,7 +112,7 @@ basic_prefer_v4_body() } basic_prefer_v4_cleanup() { - policy_cleanup + vnet_cleanup basic_prefer_v4 } atf_test_case basic cleanup @@ -120,9 +123,8 @@ basic_head() } basic_body() { - policy_backup - /etc/rc.d/ip6addrctl prefer_ipv6 - TEST=$(atf_get_srcdir)/h_gai + vnet_mkjail basic prefer_ipv6 + TEST="jexec getaddrinfo_test_basic $(atf_get_srcdir)/h_gai" ( $TEST ::1 http $TEST 127.0.0.1 http @@ -138,7 +140,7 @@ basic_body() } basic_cleanup() { - policy_cleanup + vnet_cleanup basic } atf_test_case specific_prefer_v4 cleanup @@ -149,9 +151,8 @@ specific_prefer_v4_head() } specific_prefer_v4_body() { - policy_backup - /etc/rc.d/ip6addrctl prefer_ipv4 - TEST=$(atf_get_srcdir)/h_gai + vnet_mkjail specific_prefer_v4 prefer_ipv4 + TEST="jexec getaddrinfo_test_specific_prefer_v4 $(atf_get_srcdir)/h_gai" ( $TEST -4 localhost http $TEST -6 localhost http ) > out 2>&1 @@ -160,7 +161,7 @@ specific_prefer_v4_body() } specific_prefer_v4_cleanup() { - policy_cleanup + vnet_cleanup specific_prefer_v4 } atf_test_case specific cleanup @@ -171,9 +172,8 @@ specific_head() } specific_body() { - policy_backup - /etc/rc.d/ip6addrctl prefer_ipv6 - TEST=$(atf_get_srcdir)/h_gai + vnet_mkjail specific prefer_ipv6 + TEST="jexec getaddrinfo_test_specific $(atf_get_srcdir)/h_gai" ( $TEST -4 localhost http $TEST -6 localhost http ) > out 2>&1 @@ -182,7 +182,7 @@ specific_body() } specific_cleanup() { - policy_cleanup + vnet_cleanup specific } atf_test_case empty_hostname_prefer_v4 cleanup @@ -193,9 +193,8 @@ empty_hostname_prefer_v4_head() } empty_hostname_prefer_v4_body() { - policy_backup - /etc/rc.d/ip6addrctl prefer_ipv4 - TEST=$(atf_get_srcdir)/h_gai + vnet_mkjail empty_hostname_prefer_v4 prefer_ipv4 + TEST="jexec getaddrinfo_test_empty_hostname_prefer_v4 $(atf_get_srcdir)/h_gai" ( $TEST '' http $TEST '' echo @@ -212,7 +211,7 @@ empty_hostname_prefer_v4_body() } empty_hostname_prefer_v4_cleanup() { - policy_cleanup + vnet_cleanup empty_hostname_prefer_v4 } atf_test_case empty_hostname cleanup @@ -223,9 +222,8 @@ empty_hostname_head() } empty_hostname_body() { - policy_backup - /etc/rc.d/ip6addrctl prefer_ipv6 - TEST=$(atf_get_srcdir)/h_gai + vnet_mkjail empty_hostname prefer_ipv6 + TEST="jexec getaddrinfo_test_empty_hostname $(atf_get_srcdir)/h_gai" ( $TEST '' http $TEST '' echo @@ -242,7 +240,7 @@ empty_hostname_body() } empty_hostname_cleanup() { - policy_cleanup + vnet_cleanup empty_hostname } atf_test_case empty_servname_prefer_v4 cleanup @@ -253,9 +251,8 @@ empty_servname_prefer_v4_head() } empty_servname_prefer_v4_body() { - policy_backup - /etc/rc.d/ip6addrctl prefer_ipv4 - TEST=$(atf_get_srcdir)/h_gai + vnet_mkjail empty_servname_prefer_v4 prefer_ipv4 + TEST="jexec getaddrinfo_test_empty_servname_prefer_v4 $(atf_get_srcdir)/h_gai" ( $TEST ::1 '' $TEST 127.0.0.1 '' @@ -266,7 +263,7 @@ empty_servname_prefer_v4_body() } empty_servname_prefer_v4_cleanup() { - policy_cleanup + vnet_cleanup empty_servname_prefer_v4 } atf_test_case empty_servname cleanup @@ -277,9 +274,8 @@ empty_servname_head() } empty_servname_body() { - policy_backup - /etc/rc.d/ip6addrctl prefer_ipv6 - TEST=$(atf_get_srcdir)/h_gai + vnet_mkjail empty_servname prefer_ipv6 + TEST="jexec getaddrinfo_test_empty_servname $(atf_get_srcdir)/h_gai" ( $TEST ::1 '' $TEST 127.0.0.1 '' @@ -290,7 +286,7 @@ empty_servname_body() } empty_servname_cleanup() { - policy_cleanup + vnet_cleanup empty_servname } atf_test_case sock_raw_prefer_v4 cleanup @@ -301,9 +297,8 @@ sock_raw_prefer_v4_head() } sock_raw_prefer_v4_body() { - policy_backup - /etc/rc.d/ip6addrctl prefer_ipv4 - TEST=$(atf_get_srcdir)/h_gai + vnet_mkjail sock_raw_prefer_v4 prefer_ipv4 + TEST="jexec getaddrinfo_test_sock_raw_prefer_v4 $(atf_get_srcdir)/h_gai" ( $TEST -R -p 0 localhost '' $TEST -R -p 59 localhost '' @@ -315,7 +310,7 @@ sock_raw_prefer_v4_body() } sock_raw_prefer_v4_cleanup() { - policy_cleanup + vnet_cleanup sock_raw_prefer_v4 } atf_test_case sock_raw cleanup @@ -326,9 +321,8 @@ sock_raw_head() } sock_raw_body() { - policy_backup - /etc/rc.d/ip6addrctl prefer_ipv6 - TEST=$(atf_get_srcdir)/h_gai + vnet_mkjail sock_raw prefer_ipv6 + TEST="jexec getaddrinfo_test_sock_raw $(atf_get_srcdir)/h_gai" ( $TEST -R -p 0 localhost '' $TEST -R -p 59 localhost '' @@ -340,7 +334,7 @@ sock_raw_body() } sock_raw_cleanup() { - policy_cleanup + vnet_cleanup sock_raw } atf_test_case unsupported_family_prefer_v4 cleanup @@ -351,9 +345,8 @@ unsupported_family_prefer_v4_head() } unsupported_family_prefer_v4_body() { - policy_backup - /etc/rc.d/ip6addrctl prefer_ipv4 - TEST=$(atf_get_srcdir)/h_gai + vnet_mkjail unsupported_family_prefer_v4 prefer_ipv4 + TEST="jexec getaddrinfo_test_unsupported_family_prefer_v4 $(atf_get_srcdir)/h_gai" ( $TEST -f 99 localhost '' ) > out 2>&1 @@ -361,7 +354,7 @@ unsupported_family_prefer_v4_body() } unsupported_family_prefer_v4_cleanup() { - policy_cleanup + vnet_cleanup unsupported_family_prefer_v4 } atf_test_case unsupported_family cleanup @@ -372,9 +365,8 @@ unsupported_family_head() } unsupported_family_body() { - policy_backup - /etc/rc.d/ip6addrctl prefer_ipv6 - TEST=$(atf_get_srcdir)/h_gai + vnet_mkjail unsupported_family prefer_ipv6 + TEST="jexec getaddrinfo_test_unsupported_family $(atf_get_srcdir)/h_gai" ( $TEST -f 99 localhost '' ) > out 2>&1 @@ -382,7 +374,7 @@ unsupported_family_body() } unsupported_family_cleanup() { - policy_cleanup + vnet_cleanup unsupported_family } atf_test_case scopeaddr_prefer_v4 cleanup @@ -393,20 +385,19 @@ scopeaddr_prefer_v4_head() } scopeaddr_prefer_v4_body() { - policy_backup - /etc/rc.d/ip6addrctl prefer_ipv4 - TEST=$(atf_get_srcdir)/h_gai + vnet_mkjail scopeaddr_prefer_v4 prefer_ipv4 + TEST="jexec getaddrinfo_test_scopeaddr_prefer_v4 $(atf_get_srcdir)/h_gai" ( $TEST fe80::1%lo0 http -# IF=`ifconfig -a | grep -v '^ ' | sed -e 's/:.*//' | head -1 | awk '{print $1}'` -# $TEST fe80::1%$IF http +# IF=ifconfig -a | grep -v '^ ' | sed -e 's/:.*//' | head -1 | awk '{print $1}' +# $TEST fe80::1%$IF http ) > out 2>&1 check_output scoped ifconfig prefer_v4 } scopeaddr_prefer_v4_cleanup() { - policy_cleanup + vnet_cleanup scopeaddr_prefer_v4 } atf_test_case scopeaddr cleanup @@ -417,20 +408,19 @@ scopeaddr_head() } scopeaddr_body() { - policy_backup - /etc/rc.d/ip6addrctl prefer_ipv6 - TEST=$(atf_get_srcdir)/h_gai + vnet_mkjail scopeaddr prefer_ipv6 + TEST="jexec getaddrinfo_test_scopeaddr $(atf_get_srcdir)/h_gai" ( $TEST fe80::1%lo0 http -# IF=`ifconfig -a | grep -v '^ ' | sed -e 's/:.*//' | head -1 | awk '{print $1}'` -# $TEST fe80::1%$IF http +# IF=ifconfig -a | grep -v '^ ' | sed -e 's/:.*//' | head -1 | awk '{print $1}' +# $TEST fe80::1%$IF http ) > out 2>&1 check_output scoped none prefer_v6 } scopeaddr_cleanup() { - policy_cleanup + vnet_cleanup scopeaddr } atf_init_test_cases()