diff options
author | Erik Johnston <erik@matrix.org> | 2018-09-19 15:08:36 +0100 |
---|---|---|
committer | Erik Johnston <erik@matrix.org> | 2018-09-19 15:08:36 +0100 |
commit | ce846bb620e9866531f4a49f183fdd3cbb3f1eeb (patch) | |
tree | ed38561118af50948598967e17ad6a7f1fee8a8c /synapse/crypto/keyclient.py | |
parent | Newsfile (diff) | |
parent | Merge pull request #3910 from matrix-org/erikj/update_timeout (diff) | |
download | synapse-ce846bb620e9866531f4a49f183fdd3cbb3f1eeb.tar.xz |
Merge branch 'develop' of github.com:matrix-org/synapse into erikj/faster_typing
Diffstat (limited to 'synapse/crypto/keyclient.py')
-rw-r--r-- | synapse/crypto/keyclient.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/synapse/crypto/keyclient.py b/synapse/crypto/keyclient.py index e94400b8e2..57d4665e84 100644 --- a/synapse/crypto/keyclient.py +++ b/synapse/crypto/keyclient.py @@ -50,7 +50,7 @@ def fetch_server_key(server_name, tls_client_options_factory, path=KEY_API_V1): defer.returnValue((server_response, server_certificate)) except SynapseKeyClientError as e: logger.warn("Error getting key for %r: %s", server_name, e) - if e.status.startswith("4"): + if e.status.startswith(b"4"): # Don't retry for 4xx responses. raise IOError("Cannot get key for %r" % server_name) except (ConnectError, DomainError) as e: @@ -82,6 +82,12 @@ class SynapseKeyClientProtocol(HTTPClient): self._peer = self.transport.getPeer() logger.debug("Connected to %s", self._peer) + if not isinstance(self.path, bytes): + self.path = self.path.encode('ascii') + + if not isinstance(self.host, bytes): + self.host = self.host.encode('ascii') + self.sendCommand(b"GET", self.path) if self.host: self.sendHeader(b"Host", self.host) |