Skip to content

Commit 6d928e8

Browse files
committed
topotato: reject iproute2 < ss191125
Older versions of iproute2 use a date-based snapshot version number. Signed-off-by: David Lamparter <[email protected]>
1 parent d9dd634 commit 6d928e8

File tree

1 file changed

+9
-2
lines changed

1 file changed

+9
-2
lines changed

topotato/topolinux.py

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -101,8 +101,15 @@ def pytest_topotato_envcheck(cls, session, result: EnvcheckResult):
101101
ip_ver = subprocess.check_output([cls._exec.get("ip") or "ip", "-V"]).decode(
102102
"UTF-8"
103103
)
104-
ip_ver_m = re.search(r"iproute2-([\d\.]+)", ip_ver)
105-
if ip_ver_m and packaging:
104+
ip_ver_m = re.search(r"iproute2-((?:ss)?[\d\.]+)", ip_ver)
105+
if ip_ver_m and ip_ver_m.group(1).startswith("ss"):
106+
ver = ip_ver_m.group(1)
107+
ssdate = int(ver[2:])
108+
if ssdate < 191125:
109+
result.error(
110+
"iproute2 version %s is too old, need >= ss191125 / 5.4" % (ver,)
111+
)
112+
elif ip_ver_m and packaging:
106113
ver = packaging.version.parse(ip_ver_m.group(1))
107114
minver = packaging.version.parse("5.4")
108115
if ver < minver:

0 commit comments

Comments
 (0)