From nobody Mon Mar 10 10:13:48 2025 X-Original-To: dev-commits-src-branches@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 4ZBCR040Lfz5qfy4; Mon, 10 Mar 2025 10:13:48 +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 4ZBCR01NNHz3tY4; Mon, 10 Mar 2025 10:13:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1741601628; 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=KDpKtRL0i/TOHfp8Q3ac1L18SYzXli244kx8tRxAJeY=; b=isEDhcgXLavUuvoXAB+yDR4L/FVFk8UYC4tXOPGqU+LhKuFkCVliDr8/BP5IhnoIOg3+8O 7qjNBzswOb6JHRI4UrH9MP0WvtByaLQA7oBsFoG8xDCrsSRfP44oWUVCZvekhKSvYdDYuh EdCCqGnjX97JDBwpTRNzbs8RyFOSpeL7rD/kD+I2RrQKFoLQ8rq1OlxjNfH5E4caYcTT62 EIyMlsRNm5SEIgnntKetzA+QSEpqDa9eG6cjkTdhK3ldlPpoj3rWwHkMOYJr82NXDBOOC2 crsQr0iiG6u1CskWTNSWcnHhxL+yj3sB0QmUGjxxyWLCk7KjxgRCGpxbY/d15g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1741601628; a=rsa-sha256; cv=none; b=x9zGGYhQAoozHQtJXqiRo0mCjoDr6d8hcVGT4dCgz4QYR+nPhOb9F0WFSBB2rZvZsJVQpf 6oINjFXhZBn0Mc9XInRI5b+BRMNthzZyM3/rQcPD+USkZ+b4rA8lzLwFSA98UmOVmVwEec p4GbbtRILUYFFELhGRsFEcHfmyVZhyWv+A4X2HJ02FZ5Z1OS62UQQ06vUOzYYdjxOmkJbi QicJOnixLOX8O7wETGE0EDCE1QlqzFPUFsDioZkm42bs+RrdJTviS6WK85ASXKDbWsyNhk XZ7R7USk4OuEFLah8Unp9aWuAHCzLLJ73kLzsaf51bZeKTdRCZ6X7d7jRkHM9Q== 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=1741601628; 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=KDpKtRL0i/TOHfp8Q3ac1L18SYzXli244kx8tRxAJeY=; b=EUst94SARuAjCO/BoC5l2s/TY4ew0LIGs6j4oOXUQgBUgcZoTLM/b+7qWETEE7EIjXo1+e fCh1/fItfCivBo03GU8KZXJSfBB3VlBRK7VllSAp+By2GXm9+nr6lKM1Q9ofbeG/HiOj7G DeYm3cGgTSU/OWHVvYKNWZR7mZOiqV85530RAya3Iu8LQENmG2KviBIYybzHvpLW3y1oxy iG2xviQm5ZLaCm8d8CFyQ8B/YM8U6/UK9lwItmrk9drg+Q9wsFMjxsO+TO+1Ks23F5WO2y DYevsL1oFCVP1uwp7jrF5UueEkYV7zOBcD78P5CF7o5cQ4Ir1Z6iL5UfWAFlnA== 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 4ZBCR00yNlzbDV; Mon, 10 Mar 2025 10:13:48 +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 52AADmjd003784; Mon, 10 Mar 2025 10:13:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 52AADmBG003781; Mon, 10 Mar 2025 10:13:48 GMT (envelope-from git) Date: Mon, 10 Mar 2025 10:13:48 GMT Message-Id: <202503101013.52AADmBG003781@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Zhenlei Huang Subject: git: e84a17db1cc0 - stable/14 - tests/netlink: Assert the route scope of interface's addresses List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: e84a17db1cc034b87df7660dadb709a019140c3c Auto-Submitted: auto-generated The branch stable/14 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=e84a17db1cc034b87df7660dadb709a019140c3c commit e84a17db1cc034b87df7660dadb709a019140c3c Author: Zhenlei Huang AuthorDate: 2025-03-07 04:14:44 +0000 Commit: Zhenlei Huang CommitDate: 2025-03-10 10:13:10 +0000 tests/netlink: Assert the route scope of interface's addresses While here, add one additional IPv4 link-local address to test_46_nofilter to cover the IPv4 RT_SCOPE_LINK case. Reviewed by: melifaro, #network MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D49226 (cherry picked from commit 5d8b48487acc8375675f2b7c4507c98ac5d0bf75) --- tests/sys/netlink/test_rtnl_ifaddr.py | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/tests/sys/netlink/test_rtnl_ifaddr.py b/tests/sys/netlink/test_rtnl_ifaddr.py index 48e53502df54..768bf38153ff 100644 --- a/tests/sys/netlink/test_rtnl_ifaddr.py +++ b/tests/sys/netlink/test_rtnl_ifaddr.py @@ -33,7 +33,10 @@ class TestRtNlIfaddrList(NetlinkTestTemplate, SingleVnetTestTemplate): def setup_method(self, method): method_name = method.__name__ if "4" in method_name: - self.IPV4_PREFIXES = ["192.0.2.1/24"] + if "nofilter" in method_name: + self.IPV4_PREFIXES = ["192.0.2.1/24", "169.254.169.254/16"] + else: + self.IPV4_PREFIXES = ["192.0.2.1/24"] if "6" in method_name: self.IPV6_PREFIXES = ["2001:db8::1/64"] super().setup_method(method) @@ -49,14 +52,21 @@ class TestRtNlIfaddrList(NetlinkTestTemplate, SingleVnetTestTemplate): for rx_msg in self.read_msg_list(msg.nl_hdr.nlmsg_seq, NlRtMsgType.RTM_NEWADDR): ifname = socket.if_indextoname(rx_msg.base_hdr.ifa_index) family = rx_msg.base_hdr.ifa_family - ret.append((ifname, family, rx_msg)) + scope = rx_msg.base_hdr.ifa_scope + ret.append((ifname, family, scope)) ifname = "lo0" - assert len([r for r in ret if r[0] == ifname]) > 0 + assert len([r for r in ret if r[0] == ifname and r[1] == socket.AF_INET and r[2] == RtScope.RT_SCOPE_HOST.value]) == 1 + assert len([r for r in ret if r[0] == ifname and r[1] == socket.AF_INET6 and r[2] == RtScope.RT_SCOPE_HOST.value]) == 1 + assert len([r for r in ret if r[0] == ifname and r[1] == socket.AF_INET6 and r[2] == RtScope.RT_SCOPE_LINK.value]) == 1 + assert len([r for r in ret if r[0] == ifname]) == 3 ifname = self.vnet.iface_alias_map["if1"].name - assert len([r for r in ret if r[0] == ifname and r[1] == socket.AF_INET]) == 1 - assert len([r for r in ret if r[0] == ifname and r[1] == socket.AF_INET6]) == 2 + assert len([r for r in ret if r[0] == ifname and r[1] == socket.AF_INET and r[2] == RtScope.RT_SCOPE_LINK.value]) == 1 + assert len([r for r in ret if r[0] == ifname and r[1] == socket.AF_INET and r[2] == RtScope.RT_SCOPE_UNIVERSE.value]) == 1 + assert len([r for r in ret if r[0] == ifname and r[1] == socket.AF_INET6 and r[2] == RtScope.RT_SCOPE_LINK.value]) == 1 + assert len([r for r in ret if r[0] == ifname and r[1] == socket.AF_INET6 and r[2] == RtScope.RT_SCOPE_UNIVERSE.value]) == 1 + assert len([r for r in ret if r[0] == ifname]) == 4 def test_46_filter_iface(self): """Tests that listing outputs both IPv4/IPv6 for the specific interface"""