|  | @@ -15,9 +15,11 @@ along with searx. If not, see < http://www.gnu.org/licenses/ >.
 | 
	
		
			
			| 15 | 15 |  (C) 2013- by Adam Tauber, <asciimoo@gmail.com>
 | 
	
		
			
			| 16 | 16 |  '''
 | 
	
		
			
			| 17 | 17 |  
 | 
	
		
			
			|  | 18 | +import certifi
 | 
	
		
			
			| 18 | 19 |  import logging
 | 
	
		
			
			| 19 | 20 |  from os import environ
 | 
	
		
			
			| 20 | 21 |  from os.path import realpath, dirname, join, abspath
 | 
	
		
			
			|  | 22 | +from ssl import OPENSSL_VERSION_INFO, OPENSSL_VERSION
 | 
	
		
			
			| 21 | 23 |  try:
 | 
	
		
			
			| 22 | 24 |      from yaml import load
 | 
	
		
			
			| 23 | 25 |  except:
 | 
	
	
		
			
			|  | @@ -47,4 +49,10 @@ else:
 | 
	
		
			
			| 47 | 49 |  
 | 
	
		
			
			| 48 | 50 |  logger = logging.getLogger('searx')
 | 
	
		
			
			| 49 | 51 |  
 | 
	
		
			
			|  | 52 | +# Workaround for openssl versions <1.0.2
 | 
	
		
			
			|  | 53 | +# https://github.com/certifi/python-certifi/issues/26
 | 
	
		
			
			|  | 54 | +if OPENSSL_VERSION_INFO[0:3] < (1, 0, 2):
 | 
	
		
			
			|  | 55 | +    environ['REQUESTS_CA_BUNDLE'] = certifi.old_where()
 | 
	
		
			
			|  | 56 | +    logger.warning('You are using an old openssl version({0}), please upgrade above 1.0.2!'.format(OPENSSL_VERSION))
 | 
	
		
			
			|  | 57 | +
 | 
	
		
			
			| 50 | 58 |  logger.info('Initialisation done')
 |