From 35a2bc5650b09d46c4b3a6b2c99ee521a09ef73f Mon Sep 17 00:00:00 2001 From: misnyo Date: Tue, 29 Dec 2015 19:16:26 +0100 Subject: [PATCH] [fix] #471 #463 fix old openssl(<1.0.2) requests verify error --- searx/__init__.py | 8 ++++++++ versions.cfg | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) 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