#!/usr/bin/env python3
import unittest
-from random import shuffle, choice, randrange
+from random import shuffle, randrange
-from framework import VppTestCase, VppTestRunner
+from framework import VppTestCase
+from asfframework import VppTestRunner
-import scapy.compat
from scapy.packet import Raw
from scapy.layers.l2 import Ether, GRE
from scapy.layers.inet import IP, UDP, ICMP, icmptypes
ICMPv6EchoRequest,
ICMPv6EchoReply,
)
-from framework import VppTestCase, VppTestRunner
-from util import ppp, ppc, fragment_rfc791, fragment_rfc8200
+from util import ppp, fragment_rfc791, fragment_rfc8200
from vpp_gre_interface import VppGreInterface
-from vpp_ip import DpoProto
-from vpp_ip_route import VppIpRoute, VppRoutePath, FibPathProto
+from vpp_ip_route import VppIpRoute, VppRoutePath
from vpp_papi import VppEnum
# 35 is enough to have >257 400-byte fragments
def test_long_fragment_chain(self):
"""long fragment chain"""
- error_cnt_str = (
- "/err/ip4-full-reassembly-feature/fragment chain too long (drop)"
- )
+ error_cnt_str = "/err/ip4-full-reassembly-feature/reass_fragment_chain_too_long"
error_cnt = self.statistics.get_err_counter(error_cnt_str)
)
valid_fragments = fragment_rfc791(p, 400)
- counter = "/err/ip4-full-reassembly-feature/malformed packets"
+ counter = "/err/ip4-full-reassembly-feature/reass_malformed_packet"
error_counter = self.statistics.get_err_counter(counter)
self.pg_enable_capture()
self.src_if.add_stream([malformed_packet] + valid_fragments)
# TODO remove above, uncomment below once clearing of counters
# is supported
# self.assert_packet_counter_equal(
- # "/err/ip4-full-reassembly-feature/malformed packets", 1)
+ # "/err/ip4-full-reassembly-feature/reass_malformed_packet", 1)
def test_random(self):
"""random order reassembly"""
first_packets = [[] for n in range(self.vpp_worker_count)]
second_packets = [[] for n in range(self.vpp_worker_count)]
rest_of_packets = [[] for n in range(self.vpp_worker_count)]
- for (_, p) in self.pkt_infos:
+ for _, p in self.pkt_infos:
wi = randrange(self.vpp_worker_count)
second_packets[wi].append(p[0])
if len(p) <= 1:
def test_long_fragment_chain(self):
"""long fragment chain"""
- error_cnt_str = (
- "/err/ip6-full-reassembly-feature/fragment chain too long (drop)"
- )
+ error_cnt_str = "/err/ip6-full-reassembly-feature/reass_fragment_chain_too_long"
error_cnt = self.statistics.get_err_counter(error_cnt_str)
first_packets = [[] for n in range(self.vpp_worker_count)]
second_packets = [[] for n in range(self.vpp_worker_count)]
rest_of_packets = [[] for n in range(self.vpp_worker_count)]
- for (_, p) in self.pkt_infos:
+ for _, p in self.pkt_infos:
wi = randrange(self.vpp_worker_count)
second_packets[wi].append(p[0])
if len(p) <= 1: