diff options
author | Mark Haines <mjark@negativecurvature.net> | 2015-08-18 09:12:54 +0100 |
---|---|---|
committer | Mark Haines <mjark@negativecurvature.net> | 2015-08-18 09:12:54 +0100 |
commit | 8899df13bf80a5a3dda2a2df2bc28da0808faa4e (patch) | |
tree | 8251dfa08e9983e23a612fc8ff43475d453ed87b /synapse/federation/federation_client.py | |
parent | Fix bug where we were leaking None into state event lists (diff) | |
parent | Merge remote-tracking branch 'origin/develop' into markjh/end-to-end-key-fede... (diff) | |
download | synapse-8899df13bf80a5a3dda2a2df2bc28da0808faa4e.tar.xz |
Merge pull request #208 from matrix-org/markjh/end-to-end-key-federation
Federation for end-to-end key requests.
Diffstat (limited to 'synapse/federation/federation_client.py')
-rw-r--r-- | synapse/federation/federation_client.py | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/synapse/federation/federation_client.py b/synapse/federation/federation_client.py index 58a6d6a0ed..f5e346cdbc 100644 --- a/synapse/federation/federation_client.py +++ b/synapse/federation/federation_client.py @@ -134,6 +134,36 @@ class FederationClient(FederationBase): destination, query_type, args, retry_on_dns_fail=retry_on_dns_fail ) + @log_function + def query_client_keys(self, destination, content): + """Query device keys for a device hosted on a remote server. + + Args: + destination (str): Domain name of the remote homeserver + content (dict): The query content. + + Returns: + a Deferred which will eventually yield a JSON object from the + response + """ + sent_queries_counter.inc("client_device_keys") + return self.transport_layer.query_client_keys(destination, content) + + @log_function + def claim_client_keys(self, destination, content): + """Claims one-time keys for a device hosted on a remote server. + + Args: + destination (str): Domain name of the remote homeserver + content (dict): The query content. + + Returns: + a Deferred which will eventually yield a JSON object from the + response + """ + sent_queries_counter.inc("client_one_time_keys") + return self.transport_layer.claim_client_keys(destination, content) + @defer.inlineCallbacks @log_function def backfill(self, dest, context, limit, extremities): |