From: Dean Marx <[email protected]> The packet regex in extract_verbose_output could not match verbose output from tunnel protocols like VXLAN because it did not allow commas. VXLAN verbose lines contain comma-separated fields, which caused the regex to fail before reaching the final field. This silently dropped the entire packet from the parsed output. Added comma and dot to the allowed characters in the regex.
Signed-off-by: Andrew Bailey <[email protected]> Signed-off-by: Dean Marx <[email protected]> Reviewed-by: Andrew Bailey <[email protected]> Reviewed-by: Patrick Robb <[email protected]> --- dts/api/testpmd/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dts/api/testpmd/__init__.py b/dts/api/testpmd/__init__.py index 7118f9470f..3d9b64d725 100644 --- a/dts/api/testpmd/__init__.py +++ b/dts/api/testpmd/__init__.py @@ -823,7 +823,7 @@ def extract_verbose_output(output: str) -> list[TestPmdVerbosePacket]: prev_header: str = "" iter = re.finditer( r"(?P<HEADER>(?:port \d+/queue \d+: (?:received|sent) \d+ packets)?)\s*" - r"(?P<PACKET>src=[\w\s=:-]+?ol_flags: [\w ]+)", + r"(?P<PACKET>src=[\w\s=:,.-]+?ol_flags: [\w ]+)", output, ) for match in iter: -- 2.55.0

