forked from zaclys/searxng
		
	Merge pull request #207 from pointhi/hash_fix
[fix] hash error if url is including non ascii characters
This commit is contained in:
		
						commit
						4a20fc202e
					
				
					 1 changed files with 5 additions and 3 deletions
				
			
		|  | @ -215,10 +215,12 @@ def image_proxify(url): | |||
|     if url.startswith('//'): | ||||
|         url = 'https:' + url | ||||
| 
 | ||||
|     url = url.encode('utf-8') | ||||
| 
 | ||||
|     if not settings['server'].get('image_proxy') and not request.cookies.get('image_proxy'): | ||||
|         return url | ||||
| 
 | ||||
|     h = hashlib.sha256(url + settings['server']['secret_key']).hexdigest() | ||||
|     h = hashlib.sha256(url + settings['server']['secret_key'].encode('utf-8')).hexdigest() | ||||
| 
 | ||||
|     return '{0}?{1}'.format(url_for('image_proxy'), | ||||
|                             urlencode(dict(url=url, h=h))) | ||||
|  | @ -553,12 +555,12 @@ def preferences(): | |||
| 
 | ||||
| @app.route('/image_proxy', methods=['GET']) | ||||
| def image_proxy(): | ||||
|     url = request.args.get('url') | ||||
|     url = request.args.get('url').encode('utf-8') | ||||
| 
 | ||||
|     if not url: | ||||
|         return '', 400 | ||||
| 
 | ||||
|     h = hashlib.sha256(url + settings['server']['secret_key']).hexdigest() | ||||
|     h = hashlib.sha256(url + settings['server']['secret_key'].encode('utf-8')).hexdigest() | ||||
| 
 | ||||
|     if h != request.args.get('h'): | ||||
|         return '', 400 | ||||
|  |  | |||
		Loading…
	
	Add table
		
		Reference in a new issue
	
	 Adam Tauber
						Adam Tauber