diff options
author | Richard van der Hoff <richard@matrix.org> | 2019-04-03 16:21:12 +0100 |
---|---|---|
committer | Richard van der Hoff <richard@matrix.org> | 2019-04-08 12:51:16 +0100 |
commit | 7d2a0c848ea1ab22c039e94f5d0bb6ec2f08dd58 (patch) | |
tree | 8b08330a4b889c096480a32a40603ff7ce27c72e | |
parent | Merge pull request #5001 from matrix-org/rav/keyring_cleanups (diff) | |
download | synapse-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.misc | 1 | ||||
-rw-r--r-- | synapse/crypto/keyring.py | 2 | ||||
-rw-r--r-- | tests/crypto/test_keyring.py | 1 |
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) |