From nobody Mon Mar 10 10:24:29 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 4ZBCgK4NFHz5qgcY; Mon, 10 Mar 2025 10:24:29 +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 4ZBCgK2dwbz40LN; Mon, 10 Mar 2025 10:24:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1741602269; 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=yPDCZ5BNWUXkFr6U+fL7cm76V66DDd5E+xQj9lMUzh4=; b=i5K2dnHiEShtZWxBoEZ5Npyg7Z9i2exXuEGhf2KRtW/TKN12T6ysvF3S5bBkgcBoPQmjnh /O1y5VHjq4AL6NAl9SOpHsjupfGAJPbxnxTKS6EdeWMhb8jL1Jngvq12YvLXQaCa08d4qW P023W6n5nhZr+sV8VM+uDckZhYzkxFtD9DiYsBYwI8h6Y4f8cgB5o12H1Ay1AGTxfOnvdA hosi8jQOas5RL3cRlrdh0gNzLx8jtTEnbgkG/TkZGAwWRd+5HouKyyuCbxfO/imCzZDnzv 9y34jV8+U1ySHchZxjD9h4IuuXIZIZp+eZ0g7EoB+Uy9Lcw4wnZsKpLbhNMwEQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1741602269; a=rsa-sha256; cv=none; b=ORphX5uZdUTV8VzTNMm3auB2MykQ1nR/jfm3BiMrEPNxkAQDbJrM2fa/6Sjsr59MKJQZFw mCc4vPd0LXuWXBbn+8P1MO5Iv7TugeZWEKZpqqql1Xf7OVXZUk78WbBhWoYiTusHmlmN5b RqOU5MNhoheq8oxImmTjdDNcA09Tqsqm6hw4T2evelb+WYOh0DP0qPxxc0aWxoHjaUw401 a4y1zfhMeo880Wzacm2BDLS0oA9zj1x4u9/TSC0WQgb0S0mOr4xq5Uo9NYlqzr4ERxsp+m D2AUafr59rBJt9J2oef6J9Km1UcXBNx3GYOzLIHSTcT/fDAaK51z26ci/crZ7A== 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=1741602269; 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=yPDCZ5BNWUXkFr6U+fL7cm76V66DDd5E+xQj9lMUzh4=; b=gH3HxWtGzsfK21PFjU+4yXfvZZwVoOA0V4J8zssJ2/Hf+05hcqEijtURUfd3CIDTOnFfST SdRH2tpIPd5+MJrxn0MQGxmsbW2Wt9DtbtaSaFjbR/kM5XbhMK1ItI3J2103mxr/yIcvlw RECYh2shhYj1CKHww1wR98nK71vB65ApjvYJ4R1BYOd9ApwxoyZQ22yzZXO2kNXkZpqzOr BlXCqHaEoDTqzSA6v55Vri4XHiHacdI5xj8OXr2XRYxU/qivMQmOfc2c72ZEya2MOoxK+D Jd4rnrjTK1Yf0P0WzwKOv4pmbuSMJ1X3Gm0ZFRC/70zN5nyE1m0BUrj7WSdMUA== 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 4ZBCgK24bPzcBL; Mon, 10 Mar 2025 10:24:29 +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 52AAOTxN022969; Mon, 10 Mar 2025 10:24:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 52AAOTiW022965; Mon, 10 Mar 2025 10:24:29 GMT (envelope-from git) Date: Mon, 10 Mar 2025 10:24:29 GMT Message-Id: <202503101024.52AAOTiW022965@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: 9f26a03fdbdc - stable/13 - 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/13 X-Git-Reftype: branch X-Git-Commit: 9f26a03fdbdc94196e062aa34066143279f7ca8d Auto-Submitted: auto-generated The branch stable/13 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=9f26a03fdbdc94196e062aa34066143279f7ca8d commit 9f26a03fdbdc94196e062aa34066143279f7ca8d Author: Zhenlei Huang AuthorDate: 2025-03-07 04:14:44 +0000 Commit: Zhenlei Huang CommitDate: 2025-03-10 10:23:11 +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) (cherry picked from commit e84a17db1cc034b87df7660dadb709a019140c3c) --- 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 ec349fcd6fde..fd0a2a7686ee 100644 --- a/tests/sys/netlink/test_rtnl_ifaddr.py +++ b/tests/sys/netlink/test_rtnl_ifaddr.py @@ -20,7 +20,10 @@ class TestRtNlIfaddr(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) @@ -38,14 +41,21 @@ class TestRtNlIfaddr(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"""