tests: fix ipv6 fragmented esp w/ scapy 2.4.5

Since scapy 2.4.4, scapy will not decode the next layer if the fragment
offset is not 0 - IOW it will decode only for the 1st fragment.
See f1c26e77c5

Type: fix

Change-Id: If738734f90b15b24c0d98fec4bce4ff48c6d5fea
Signed-off-by: Benoît Ganne <bganne@cisco.com>
This commit is contained in:
Benoît Ganne 2024-08-01 15:09:26 +02:00 committed by Dave Wallace
parent 0f2c6cd1ab
commit d13b61171b
2 changed files with 4 additions and 5 deletions

View File

@ -1938,7 +1938,7 @@ class IpsecTra6(object):
Ether(src=sw_intf.remote_mac, dst=sw_intf.local_mac)
/ IPv6(src=src, dst=dst)
/ IPv6ExtHdrHopByHop()
/ IPv6ExtHdrFragment(id=2, offset=200)
/ IPv6ExtHdrFragment(id=2, offset=0)
/ Raw(b"\xff" * 200)
for i in range(count)
]
@ -1985,7 +1985,7 @@ class IpsecTra6(object):
tx = (
Ether(src=self.pg2.remote_mac, dst=self.pg2.local_mac)
/ IPv6(src=self.tra_if.local_ip6, dst=self.tra_if.remote_ip6)
/ IPv6ExtHdrFragment(id=2, offset=200)
/ IPv6ExtHdrFragment(id=2, offset=0)
/ Raw(b"\xff" * 200)
)
@ -2004,7 +2004,7 @@ class IpsecTra6(object):
Ether(src=self.pg2.remote_mac, dst=self.pg2.local_mac)
/ IPv6(src=self.tra_if.local_ip6, dst=self.tra_if.remote_ip6)
/ IPv6ExtHdrHopByHop()
/ IPv6ExtHdrFragment(id=2, offset=200)
/ IPv6ExtHdrFragment(id=2, offset=0)
/ Raw(b"\xff" * 200)
)
@ -2021,7 +2021,7 @@ class IpsecTra6(object):
Ether(src=self.pg2.remote_mac, dst=self.pg2.local_mac)
/ IPv6(src=self.tra_if.local_ip6, dst=self.tra_if.remote_ip6)
/ IPv6ExtHdrHopByHop()
/ IPv6ExtHdrFragment(id=2, offset=200)
/ IPv6ExtHdrFragment(id=2, offset=0)
/ IPv6ExtHdrDestOpt()
/ Raw(b"\xff" * 200)
)

View File

@ -421,7 +421,6 @@ class TemplateIpsecEsp(ConfigIpsecESP):
super(TemplateIpsecEsp, self).tearDown()
@unittest.skipIf(True, "Temporarily skip test until Scapy-2.4.5 patch is available")
class TestIpsecEsp1(
TemplateIpsecEsp, IpsecTra46Tests, IpsecTun46Tests, IpsecTra6ExtTests
):