Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Unified Diff: sitescripts/testpages/web/sitekey_frame.py

Issue 30011569: Issue 7290 - Fix signature production in sitekey_frame.py (Closed) Base URL: https://hg.adblockplus.org/sitescripts
Patch Set: Initial patch Created Feb. 19, 2019, 10:22 p.m.
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: sitescripts/testpages/web/sitekey_frame.py
===================================================================
--- a/sitescripts/testpages/web/sitekey_frame.py
+++ b/sitescripts/testpages/web/sitekey_frame.py
@@ -23,24 +23,29 @@
@url_handler('/sitekey-frame')
def sitekey_frame(environ, start_response):
template_path, template_file = os.path.split(
get_config().get('testpages', 'sitekeyFrameTemplate'),
)
template = get_template(template_file, template_path=template_path)
+ http_path = request_path(environ)
+ http_host = environ['HTTP_HOST']
+ http_ua = environ['HTTP_USER_AGENT']
+
key = M2Crypto.EVP.load_key(get_config().get('testpages', 'sitekeyPath'))
key.sign_init()
- key.sign_update('\x00'.join((
- request_path(environ),
- environ['HTTP_HOST'],
- environ['HTTP_USER_AGENT'],
- )))
-
+ key.sign_update('\x00'.join([http_path, http_host, http_ua]))
public_key = base64.b64encode(key.as_der())
signature = base64.b64encode(key.final())
- start_response('200 OK',
- [('Content-Type', 'text/html; charset=utf-8'),
- ('X-Adblock-Key', '%s_%s' % (public_key, signature))])
- return [template.render({'public_key': public_key,
- 'signature': signature}).encode('utf-8')]
+ start_response('200 OK', [
+ ('Content-Type', 'text/html; charset=utf-8'),
+ ('X-Adblock-Key', '%s_%s' % (public_key, signature)),
+ ])
+ return [template.render({
+ 'public_key': public_key,
+ 'signature': signature,
+ 'http_path': http_path,
Vasily Kuznetsov 2019/02/19 22:28:53 I pass these variables to the template as well so
+ 'http_host': http_host,
+ 'http_ua': http_ua,
+ }).encode('utf-8')]

Powered by Google App Engine
This is Rietveld