From 3c586ca500854476e6eff06713236faff233d035 Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Mon, 26 Apr 2021 10:54:12 +0200 Subject: bpo-38820: Old OpenSSL 3.0.0 releases are in /old/3.0/ (GH-25624) Signed-off-by: Christian Heimes --- Tools/ssl/multissltests.py | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/Tools/ssl/multissltests.py b/Tools/ssl/multissltests.py index dc47c5c..24d70ac 100755 --- a/Tools/ssl/multissltests.py +++ b/Tools/ssl/multissltests.py @@ -33,6 +33,7 @@ try: from urllib.error import HTTPError except ImportError: from urllib2 import urlopen, HTTPError +import re import shutil import string import subprocess @@ -448,11 +449,14 @@ class BuildOpenSSL(AbstractBuilder): @property def short_version(self): """Short version for OpenSSL download URL""" - short_version = self.version.rstrip(string.ascii_letters) - if short_version.startswith("0.9"): - short_version = "0.9.x" - return short_version - + mo = re.search(r"^(\d+)\.(\d+)\.(\d+)", self.version) + parsed = tuple(int(m) for m in mo.groups()) + if parsed < (1, 0, 0): + return "0.9.x" + if parsed >= (3, 0, 0): + # OpenSSL 3.0.0 -> /old/3.0/ + parsed = parsed[:2] + return ".".join(str(i) for i in parsed) class BuildLibreSSL(AbstractBuilder): library = "LibreSSL" -- cgit v0.12