commit: 4a20fc202e886eaf7778481c403106e6243f49b7
parent: 78828efdb0ea28efa057dbd82b240af1112f085a
Author: Adam Tauber <asciimoo@gmail.com>
Date: Sun, 1 Feb 2015 11:13:58 +0100
Merge pull request #207 from pointhi/hash_fix
[fix] hash error if url is including non ascii characters
Diffstat:
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/searx/webapp.py b/searx/webapp.py
@@ -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