diff options
-rwxr-xr-x | Tools/ssl/multissltests.py | 14 |
1 files 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" |