summary refs log tree commit diff
diff options
context:
space:
mode:
authorRichard van der Hoff <richard@matrix.org>2019-04-03 16:21:12 +0100
committerRichard van der Hoff <richard@matrix.org>2019-04-08 12:51:16 +0100
commit7d2a0c848ea1ab22c039e94f5d0bb6ec2f08dd58 (patch)
tree8b08330a4b889c096480a32a40603ff7ce27c72e
parentMerge pull request #5001 from matrix-org/rav/keyring_cleanups (diff)
downloadsynapse-7d2a0c848ea1ab22c039e94f5d0bb6ec2f08dd58.tar.xz
Fix from_server buglet in get_keys_from_perspectives
make sure we store the name of the server the keys came from, rather than the
origin server, after doing a fetch-from-perspectives.
-rw-r--r--changelog.d/5024.misc1
-rw-r--r--synapse/crypto/keyring.py2
-rw-r--r--tests/crypto/test_keyring.py1
3 files changed, 3 insertions, 1 deletions
diff --git a/changelog.d/5024.misc b/changelog.d/5024.misc
new file mode 100644
index 0000000000..07c13f28d0
--- /dev/null
+++ b/changelog.d/5024.misc
@@ -0,0 +1 @@
+Store the notary server name correctly in server_keys_json.
diff --git a/synapse/crypto/keyring.py b/synapse/crypto/keyring.py
index 54af60d711..04beededdc 100644
--- a/synapse/crypto/keyring.py
+++ b/synapse/crypto/keyring.py
@@ -652,7 +652,7 @@ class Keyring(object):
                     self.store.store_server_keys_json,
                     server_name=server_name,
                     key_id=key_id,
-                    from_server=server_name,
+                    from_server=from_server,
                     ts_now_ms=time_now_ms,
                     ts_expires_ms=ts_valid_until_ms,
                     key_json_bytes=signed_key_json_bytes,
diff --git a/tests/crypto/test_keyring.py b/tests/crypto/test_keyring.py
index b224fdb23a..9af0656a83 100644
--- a/tests/crypto/test_keyring.py
+++ b/tests/crypto/test_keyring.py
@@ -324,6 +324,7 @@ class KeyringTestCase(unittest.HomeserverTestCase):
         self.assertEqual(len(res), 1)
         res = res[0]
         self.assertEqual(res["key_id"], testverifykey_id)
+        self.assertEqual(res["from_server"], self.mock_perspective_server.server_name)
         self.assertEqual(res["ts_added_ms"], self.reactor.seconds() * 1000)
         self.assertEqual(res["ts_valid_until_ms"], VALID_UNTIL_TS)