summary refs log tree commit diff
diff options
context:
space:
mode:
authorHubert Chathi <hubert@uhoreg.ca>2019-10-24 21:46:11 -0400
committerHubert Chathi <hubert@uhoreg.ca>2019-10-24 21:46:11 -0400
commitff05c9b760ba5736a189b320c2e0d4592d0072a4 (patch)
tree2f9d2abf71987fc86cac6514f87e128038d6c5e5
parentmove get_e2e_cross_signing_key to EndToEndKeyWorkerStore so it works with wor... (diff)
downloadsynapse-ff05c9b760ba5736a189b320c2e0d4592d0072a4.tar.xz
don't error if federation query doesn't have cross-signing keys
-rw-r--r--synapse/handlers/e2e_keys.py16
1 files changed, 9 insertions, 7 deletions
diff --git a/synapse/handlers/e2e_keys.py b/synapse/handlers/e2e_keys.py

index f6aa9a940b..4ab75a351e 100644 --- a/synapse/handlers/e2e_keys.py +++ b/synapse/handlers/e2e_keys.py
@@ -218,13 +218,15 @@ class E2eKeysHandler(object): if user_id in destination_query: results[user_id] = keys - for user_id, key in remote_result["master_keys"].items(): - if user_id in destination_query: - cross_signing_keys["master_keys"][user_id] = key - - for user_id, key in remote_result["self_signing_keys"].items(): - if user_id in destination_query: - cross_signing_keys["self_signing_keys"][user_id] = key + if "master_keys" in remote_result: + for user_id, key in remote_result["master_keys"].items(): + if user_id in destination_query: + cross_signing_keys["master_keys"][user_id] = key + + if "self_signing_keys" in remote_result: + for user_id, key in remote_result["self_signing_keys"].items(): + if user_id in destination_query: + cross_signing_keys["self_signing_keys"][user_id] = key except Exception as e: failure = _exception_to_failure(e)