summary refs log tree commit diff
diff options
context:
space:
mode:
authorAmber Brown <hawkowl@atleastfornow.net>2018-10-19 22:26:00 +1100
committerGitHub <noreply@github.com>2018-10-19 22:26:00 +1100
commite404ba9aacb426efc7d815cadfabd54dcf576e3b (patch)
tree38c074e05674319ea5ee4d1d80d16e880ab67802
parentMake the metrics less racy (#4061) (diff)
downloadsynapse-e404ba9aacb426efc7d815cadfabd54dcf576e3b.tar.xz
Fix manhole on py3 (pt 2) (#4067)
-rw-r--r--changelog.d/4067.bugfix1
-rw-r--r--synapse/util/manhole.py2
2 files changed, 3 insertions, 0 deletions
diff --git a/changelog.d/4067.bugfix b/changelog.d/4067.bugfix
new file mode 100644
index 0000000000..78d69a8819
--- /dev/null
+++ b/changelog.d/4067.bugfix
@@ -0,0 +1 @@
+Manhole now works again on Python 3, instead of failing with a "couldn't match all kex parts" when connecting.
diff --git a/synapse/util/manhole.py b/synapse/util/manhole.py
index cf43ab6a19..9cb7e9c9ab 100644
--- a/synapse/util/manhole.py
+++ b/synapse/util/manhole.py
@@ -70,6 +70,8 @@ def manhole(username, password, globals):
     Returns:
         twisted.internet.protocol.Factory: A factory to pass to ``listenTCP``
     """
+    if not isinstance(password, bytes):
+        password = password.encode('ascii')
 
     checker = checkers.InMemoryUsernamePasswordDatabaseDontUse(
         **{username: password}