Merge branch 'erikj/attestation_local_fix' of github.com:matrix-org/synapse into develop

This commit is contained in:
Erik Johnston 2017-10-27 15:07:08 +01:00
commit 4ab8abbc2b
3 changed files with 36 additions and 9 deletions

View file

@ -35,6 +35,8 @@ An attestsation is a signed blob of json that looks like:
}
"""
import logging
from twisted.internet import defer
from synapse.api.errors import SynapseError
@ -44,6 +46,9 @@ from synapse.util.logcontext import preserve_fn
from signedjson.sign import sign_json
logger = logging.getLogger(__name__)
# Default validity duration for new attestations we create
DEFAULT_ATTESTATION_LENGTH_MS = 3 * 24 * 60 * 60 * 1000
@ -150,12 +155,19 @@ class GroupAttestionRenewer(object):
@defer.inlineCallbacks
def _renew_attestation(group_id, user_id):
attestation = self.attestations.create_attestation(group_id, user_id)
if self.is_mine_id(group_id):
if not self.is_mine_id(group_id):
destination = get_domain_from_id(group_id)
elif not self.is_mine_id(user_id):
destination = get_domain_from_id(user_id)
else:
destination = get_domain_from_id(group_id)
logger.warn(
"Incorrectly trying to do attestations for user: %r in %r",
user_id, group_id,
)
yield self.store.remove_attestation_renewal(group_id, user_id)
return
attestation = self.attestations.create_attestation(group_id, user_id)
yield self.transport_client.renew_group_attestation(
destination, group_id, user_id,