[tor-commits] [bridgedb/develop] Turn HTTP arguments dict from bytes to str.
phw at torproject.org
phw at torproject.org
Wed Feb 19 18:27:18 UTC 2020
commit 29c2bd17c43fb5ab541281e7a9d2822fc0045338
Author: Philipp Winter <phw at nymity.ch>
Date: Thu Jan 30 15:28:06 2020 -0800
Turn HTTP arguments dict from bytes to str.
---
bridgedb/distributors/https/server.py | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/bridgedb/distributors/https/server.py b/bridgedb/distributors/https/server.py
index 2d230b9..52a083f 100644
--- a/bridgedb/distributors/https/server.py
+++ b/bridgedb/distributors/https/server.py
@@ -974,6 +974,14 @@ class BridgesResource(CustomErrorHandlingResource, CSPResource):
logging.info("Replying to web request from %s. Parameters were %r"
% (ip, request.args))
+ # Convert all key/value pairs from bytes to str.
+ str_args = {}
+ for arg, values in request.args.items():
+ arg = arg if isinstance(arg, str) else arg.decode("utf-8")
+ values = [value.decode("utf-8") if isinstance(value, bytes) else value for value in values]
+ str_args[arg] = values
+ request.args = str_args
+
if ip:
bridgeRequest = HTTPSBridgeRequest()
bridgeRequest.client = ip
More information about the tor-commits
mailing list