From 4e388e5dc255d65894c2e3e50ac52b35df58e198 Mon Sep 17 00:00:00 2001 From: rllola Date: Tue, 5 Mar 2019 18:33:29 +0100 Subject: [PATCH 1/4] Find openssl lib in LD_LIBRARY_PATH --- src/util/SslPatch.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/util/SslPatch.py b/src/util/SslPatch.py index a83f7fac..b93d37f3 100644 --- a/src/util/SslPatch.py +++ b/src/util/SslPatch.py @@ -32,6 +32,12 @@ def getLibraryPath(): except Exception, err: logging.debug("OpenSSL lib not found in: %s (%s)" % (lib_dir, err)) + if "LD_LIBRARY_PATH" in os.environ: + try: + return [lib for lib in os.listdir(os.environ["LD_LIBRARY_PATH"]) if "libcrypto.so.1.0" in lib][0] + except Exception, err: + logging.debug("OpenSSL lib not found in: %s (%s)" % (lib_dir, err)) + return ( ctypes.util.find_library('ssl.so.1.0') or ctypes.util.find_library('ssl') or ctypes.util.find_library('crypto') or ctypes.util.find_library('libcrypto') or 'libeay32' From 32ddaed376569fa7c1c9e3e44a7eb75a52c96b49 Mon Sep 17 00:00:00 2001 From: rllola Date: Tue, 5 Mar 2019 18:58:47 +0100 Subject: [PATCH 2/4] Actually at ALL the path in the environnement variable and look for the openssl lib --- src/util/SslPatch.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/util/SslPatch.py b/src/util/SslPatch.py index b93d37f3..a1e5f33f 100644 --- a/src/util/SslPatch.py +++ b/src/util/SslPatch.py @@ -33,10 +33,12 @@ def getLibraryPath(): logging.debug("OpenSSL lib not found in: %s (%s)" % (lib_dir, err)) if "LD_LIBRARY_PATH" in os.environ: - try: - return [lib for lib in os.listdir(os.environ["LD_LIBRARY_PATH"]) if "libcrypto.so.1.0" in lib][0] - except Exception, err: - logging.debug("OpenSSL lib not found in: %s (%s)" % (lib_dir, err)) + lib_dir_paths = os.environ["LD_LIBRARY_PATH"].split(":") + for path in lib_dir_paths: + try: + return [lib for lib in os.listdir(path) if "libcrypto.so.1.0" in lib][0] + except Exception, err: + logging.debug("OpenSSL lib not found in: %s (%s)" % (path, err)) return ( ctypes.util.find_library('ssl.so.1.0') or ctypes.util.find_library('ssl') or From fb836fcf6f2b40e557b5416eeccedd96ad4d3e5f Mon Sep 17 00:00:00 2001 From: rllola Date: Sat, 9 Mar 2019 18:41:50 +0100 Subject: [PATCH 3/4] If no port defined in tracker url assume it is port 80; fix #1917 --- src/Site/SiteAnnouncer.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/Site/SiteAnnouncer.py b/src/Site/SiteAnnouncer.py index 484d48fb..c0c575dc 100644 --- a/src/Site/SiteAnnouncer.py +++ b/src/Site/SiteAnnouncer.py @@ -172,7 +172,11 @@ class SiteAnnouncer(object): if "://" not in tracker or not re.match("^[A-Za-z0-9:/\\.#-]+$", tracker): return None protocol, address = tracker.split("://", 1) - ip, port = address.rsplit(":", 1) + try: + ip, port = address.rsplit(":", 1) + except ValueError as err: + ip = address + port = 80 back = {} back["protocol"] = protocol back["address"] = address From 58516913b446c7dd7f02a903e1522c205d6f53cf Mon Sep 17 00:00:00 2001 From: rllola Date: Sun, 10 Mar 2019 22:19:37 +0100 Subject: [PATCH 4/4] if protocol https choose port 443 --- src/Site/SiteAnnouncer.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/Site/SiteAnnouncer.py b/src/Site/SiteAnnouncer.py index c0c575dc..48a05e69 100644 --- a/src/Site/SiteAnnouncer.py +++ b/src/Site/SiteAnnouncer.py @@ -177,6 +177,8 @@ class SiteAnnouncer(object): except ValueError as err: ip = address port = 80 + if protocol.startswith("https"): + port = 443 back = {} back["protocol"] = protocol back["address"] = address