aboutsummaryrefslogtreecommitdiffstats
path: root/test/test_reassembly.py
diff options
context:
space:
mode:
authorKlement Sekera <ksekera@cisco.com>2018-12-13 14:35:48 +0100
committerDave Barach <openvpp@barachs.net>2018-12-13 14:42:50 +0000
commit400f6d8c1ba8b6a22fff434091cb1191f17889c7 (patch)
treef376f89433b265217cf03b82a272d39e1d95de0a /test/test_reassembly.py
parent14d7e90788f87a4b7b174bb5a67171f8c9a7f842 (diff)
reassembly: fix internal buffer count accounting
Change-Id: I6af2c8552aeafe0abc8b8c3e5af1a05640e95919 Signed-off-by: Klement Sekera <ksekera@cisco.com>
Diffstat (limited to 'test/test_reassembly.py')
-rw-r--r--test/test_reassembly.py31
1 files changed, 31 insertions, 0 deletions
diff --git a/test/test_reassembly.py b/test/test_reassembly.py
index 65a5eb0914d..1fa05a4efb6 100644
--- a/test/test_reassembly.py
+++ b/test/test_reassembly.py
@@ -203,6 +203,37 @@ class TestIPv4Reassembly(VppTestCase):
self.assert_packet_counter_equal(
"/err/ip4-reassembly-feature/malformed packets", 1)
+ def test_44924(self):
+ """ compress tiny fragments """
+ packets = [(Ether(dst=self.src_if.local_mac,
+ src=self.src_if.remote_mac) /
+ IP(id=24339, flags="MF", frag=0, ttl=64,
+ src=self.src_if.remote_ip4,
+ dst=self.dst_if.remote_ip4) /
+ ICMP(type="echo-request", code=0, id=0x1fe6, seq=0x2407) /
+ Raw(load='Test-group: IPv4')),
+ (Ether(dst=self.src_if.local_mac,
+ src=self.src_if.remote_mac) /
+ IP(id=24339, flags="MF", frag=3, ttl=64,
+ src=self.src_if.remote_ip4,
+ dst=self.dst_if.remote_ip4) /
+ ICMP(type="echo-request", code=0, id=0x1fe6, seq=0x2407) /
+ Raw(load='.IPv4.Fragmentation.vali')),
+ (Ether(dst=self.src_if.local_mac,
+ src=self.src_if.remote_mac) /
+ IP(id=24339, frag=6, ttl=64,
+ src=self.src_if.remote_ip4,
+ dst=self.dst_if.remote_ip4) /
+ ICMP(type="echo-request", code=0, id=0x1fe6, seq=0x2407) /
+ Raw(load='d; Test-case: 44924'))
+ ]
+
+ self.pg_enable_capture()
+ self.src_if.add_stream(packets)
+ self.pg_start()
+
+ self.dst_if.get_capture(1)
+
@unittest.skipIf(is_skip_aarch64_set() and is_platform_aarch64(),
"test doesn't work on aarch64")
def test_random(self):