diff --git a/searx/__init__.py b/searx/__init__.py index ea21e8f13..76038a443 100644 --- a/searx/__init__.py +++ b/searx/__init__.py @@ -15,9 +15,11 @@ along with searx. If not, see < http://www.gnu.org/licenses/ >. (C) 2013- by Adam Tauber, ''' +import certifi import logging from os import environ from os.path import realpath, dirname, join, abspath +from ssl import OPENSSL_VERSION_INFO, OPENSSL_VERSION try: from yaml import load except: @@ -47,4 +49,10 @@ else: logger = logging.getLogger('searx') +# Workaround for openssl versions <1.0.2 +# https://github.com/certifi/python-certifi/issues/26 +if OPENSSL_VERSION_INFO[0:3] < (1, 0, 2): + environ['REQUESTS_CA_BUNDLE'] = certifi.old_where() + logger.warning('You are using an old openssl version({0}), please upgrade above 1.0.2!'.format(OPENSSL_VERSION)) + logger.info('Initialisation done') diff --git a/versions.cfg b/versions.cfg index 6aad7a744..2cb86aba1 100644 --- a/versions.cfg +++ b/versions.cfg @@ -35,7 +35,7 @@ pyopenssl = 0.15.1 ndg-httpsclient = 0.4.0 pyasn1 = 0.1.8 pyasn1-modules = 0.0.6 -certifi = 2015.04.28 +certifi = 2015.11.20.1 cffi = 1.1.2 cryptography = 0.9.1