[Python-checkins] bpo-38820: Old OpenSSL 3.0.0 releases are in /old/3.0/ (GH-25624)

tiran webhook-mailer at python.org
Mon Apr 26 04:54:20 EDT 2021


https://github.com/python/cpython/commit/3c586ca500854476e6eff06713236faff233d035
commit: 3c586ca500854476e6eff06713236faff233d035
branch: master
author: Christian Heimes <christian at python.org>
committer: tiran <christian at python.org>
date: 2021-04-26T10:54:12+02:00
summary:

bpo-38820: Old OpenSSL 3.0.0 releases are in /old/3.0/ (GH-25624)

Signed-off-by: Christian Heimes <christian at python.org>

files:
M Tools/ssl/multissltests.py

diff --git a/Tools/ssl/multissltests.py b/Tools/ssl/multissltests.py
index dc47c5ce12cfa..24d70ac6e4015 100755
--- a/Tools/ssl/multissltests.py
+++ b/Tools/ssl/multissltests.py
@@ -33,6 +33,7 @@
     from urllib.error import HTTPError
 except ImportError:
     from urllib2 import urlopen, HTTPError
+import re
 import shutil
 import string
 import subprocess
@@ -448,11 +449,14 @@ def _post_install_300(self):
     @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"



More information about the Python-checkins mailing list