Introduce an as simple as possible regular expression to parse IPv6
routes. This doesn't support parsing of the least significant 32 bits
in IPv4 format.
Signed-off-by: Petr Machata <petrm(a)mellanox.com>
Reviewed-by: Yotam Gigi <yotamg(a)mellanox.com>
---
Notes:
Changes from v1 to v2:
- Reword the subject for clarity
lnst/Slave/NetTestSlave.py | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/lnst/Slave/NetTestSlave.py b/lnst/Slave/NetTestSlave.py
index a6acb8d..8f2eef3 100644
--- a/lnst/Slave/NetTestSlave.py
+++ b/lnst/Slave/NetTestSlave.py
@@ -766,7 +766,8 @@ class SlaveMethods:
dc_routes = []
nh_routes = []
ip_re = "\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}"
- prefix_re = "^(" + ip_re + "(?:/\d{1,3})?)"
+ ip6_re =
"(?:(?:[\da-f]{1,4}:)*|:)(?::|(?:[\da-f]{1,4})|(?::[\da-f]{1,4})*)"
+ prefix_re = "^((?:local )?" + "(?:%s|%s)" % (ip_re, ip6_re) +
"(?:/\d{1,3})?)"
# parse directly connected routes
dc_route_re = prefix_re + " dev (\w+) (.*)"
--
2.4.11