git: 65cc5af1cf88 - main - sys tests: Add scapy as a required program
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 12 Feb 2025 14:44:48 UTC
The branch main has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=65cc5af1cf88ed124ab16091624e918faa61c7f2 commit 65cc5af1cf88ed124ab16091624e918faa61c7f2 Author: Jose Luis Duran <jlduran@FreeBSD.org> AuthorDate: 2025-02-12 14:38:44 +0000 Commit: Jose Luis Duran <jlduran@FreeBSD.org> CommitDate: 2025-02-12 14:40:43 +0000 sys tests: Add scapy as a required program These atf-python tests rely on scapy to run. Add it as a required program. Reported by: glebius, kp Reviewed by: kp Approved by: emaste (mentor) MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D48946 --- tests/sys/netinet/carp.py | 2 ++ tests/sys/netinet/igmp.py | 1 + tests/sys/netpfil/pf/frag6.py | 3 +++ tests/sys/netpfil/pf/icmp.py | 2 ++ tests/sys/netpfil/pf/nat64.py | 4 ++++ tests/sys/netpfil/pf/nat66.py | 2 ++ 6 files changed, 14 insertions(+) diff --git a/tests/sys/netinet/carp.py b/tests/sys/netinet/carp.py index 0db31e79ba84..e35c9470d035 100644 --- a/tests/sys/netinet/carp.py +++ b/tests/sys/netinet/carp.py @@ -39,6 +39,7 @@ class TestCarp(VnetTestTemplate): if p.src != "00:00:5e:00:01:01": raise + @pytest.mark.require_progs(["scapy"]) def test_source_mac(self): "Test carp packets source address" @@ -52,6 +53,7 @@ class TestCarp(VnetTestTemplate): self.check_carp_src_mac(carp_pkts) + @pytest.mark.require_progs(["scapy"]) def test_source_mac_vrrp(self): "Test VRRP packets source address" diff --git a/tests/sys/netinet/igmp.py b/tests/sys/netinet/igmp.py index 4a4e67211bd7..5d3b38cac38f 100644 --- a/tests/sys/netinet/igmp.py +++ b/tests/sys/netinet/igmp.py @@ -80,6 +80,7 @@ class TestIGMP(VnetTestTemplate): sp = _sp super().setup_method(method) + @pytest.mark.require_progs(["scapy"]) def test_igmp3_join_leave(self): "Test that we send the expected join/leave IGMPv2 messages" diff --git a/tests/sys/netpfil/pf/frag6.py b/tests/sys/netpfil/pf/frag6.py index f274fc28a3bf..108b53874d0b 100644 --- a/tests/sys/netpfil/pf/frag6.py +++ b/tests/sys/netpfil/pf/frag6.py @@ -43,6 +43,7 @@ class TestFrag6(VnetTestTemplate): return False @pytest.mark.require_user("root") + @pytest.mark.require_progs(["scapy"]) def test_dup_frag_hdr(self): "Test packets with duplicate fragment headers" srv_vnet = self.vnet_map["vnet2"] @@ -64,6 +65,7 @@ class TestFrag6(VnetTestTemplate): assert not p.getlayer(sp.ICMPv6EchoReply) @pytest.mark.require_user("root") + @pytest.mark.require_progs(["scapy"]) def test_overlong(self): "Test overly long fragmented packet" @@ -112,6 +114,7 @@ class TestFrag6_Overlap(VnetTestTemplate): ]) @pytest.mark.require_user("root") + @pytest.mark.require_progs(["scapy"]) def test_overlap(self): "Ensure we discard packets with overlapping fragments" diff --git a/tests/sys/netpfil/pf/icmp.py b/tests/sys/netpfil/pf/icmp.py index e54f9f20a058..6ab649f62be7 100644 --- a/tests/sys/netpfil/pf/icmp.py +++ b/tests/sys/netpfil/pf/icmp.py @@ -86,6 +86,7 @@ class TestICMP(VnetTestTemplate): vnet.pipe.send("Got ICMP destination unreachable packet") @pytest.mark.require_user("root") + @pytest.mark.require_progs(["scapy"]) def test_inner_match(self): vnet = self.vnet_map["vnet1"] dst_vnet = self.vnet_map["vnet3"] @@ -160,6 +161,7 @@ class TestICMP(VnetTestTemplate): return @pytest.mark.require_user("root") + @pytest.mark.require_progs(["scapy"]) def test_fragmentation_needed(self): ToolsHelper.print_output("/sbin/route add default 192.0.2.1") diff --git a/tests/sys/netpfil/pf/nat64.py b/tests/sys/netpfil/pf/nat64.py index 64ec5ae15262..070b7a82e6d9 100644 --- a/tests/sys/netpfil/pf/nat64.py +++ b/tests/sys/netpfil/pf/nat64.py @@ -93,6 +93,7 @@ class TestNAT64(VnetTestTemplate): "pass in on %s inet6 af-to inet from 192.0.2.1" % ifname]) @pytest.mark.require_user("root") + @pytest.mark.require_progs(["scapy"]) def test_tcp_rst(self): ToolsHelper.print_output("/sbin/route -6 add default 2001:db8::1") @@ -126,6 +127,7 @@ class TestNAT64(VnetTestTemplate): assert "A" in tcp.flags @pytest.mark.require_user("root") + @pytest.mark.require_progs(["scapy"]) def test_udp_port_closed(self): ToolsHelper.print_output("/sbin/route -6 add default 2001:db8::1") @@ -147,6 +149,7 @@ class TestNAT64(VnetTestTemplate): assert udp.dport == 1222 @pytest.mark.require_user("root") + @pytest.mark.require_progs(["scapy"]) def test_address_unreachable(self): ToolsHelper.print_output("/sbin/route -6 add default 2001:db8::1") @@ -172,6 +175,7 @@ class TestNAT64(VnetTestTemplate): assert ip6.hlim == 62 @pytest.mark.require_user("root") + @pytest.mark.require_progs(["scapy"]) def test_udp_checksum(self): ToolsHelper.print_output("/sbin/route -6 add default 2001:db8::1") diff --git a/tests/sys/netpfil/pf/nat66.py b/tests/sys/netpfil/pf/nat66.py index 3a037ac710fc..f93512b5b99c 100644 --- a/tests/sys/netpfil/pf/nat66.py +++ b/tests/sys/netpfil/pf/nat66.py @@ -140,6 +140,7 @@ class TestNAT66(VnetTestTemplate): assert found @pytest.mark.require_user("root") + @pytest.mark.require_progs(["scapy"]) def test_npt_icmp(self): cl_vnet = self.vnet_map["vnet1"] ifname = cl_vnet.iface_alias_map["if1"].name @@ -168,6 +169,7 @@ class TestNAT66(VnetTestTemplate): self.check_icmp_too_big(sp, 12000, 5000) @pytest.mark.require_user("root") + @pytest.mark.require_progs(["scapy"]) def test_npt_route_to_icmp(self): cl_vnet = self.vnet_map["vnet1"] ifname = cl_vnet.iface_alias_map["if1"].name