diff options
author | Erik Johnston <erikj@jki.re> | 2016-09-22 13:41:49 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-09-22 13:41:49 +0100 |
commit | 667fcd54e8d57db1280b44d036d0d22a9b07f2fd (patch) | |
tree | 02d494348585b62e072256e342de2576a8ba41cf /synapse/handlers | |
parent | Merge pull request #1132 from matrix-org/erikj/initial_sync_split (diff) | |
parent | Update comments (diff) | |
download | synapse-667fcd54e8d57db1280b44d036d0d22a9b07f2fd.tar.xz |
Merge pull request #1136 from matrix-org/erikj/fix_signed_3pid
Allow invites via 3pid to bypass sender sig check
Diffstat (limited to 'synapse/handlers')
-rw-r--r-- | synapse/handlers/federation.py | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/synapse/handlers/federation.py b/synapse/handlers/federation.py index f7cb3c1bb2..2d801bad47 100644 --- a/synapse/handlers/federation.py +++ b/synapse/handlers/federation.py @@ -1922,15 +1922,18 @@ class FederationHandler(BaseHandler): original_invite = yield self.store.get_event( original_invite_id, allow_none=True ) - if not original_invite: + if original_invite: + display_name = original_invite.content["display_name"] + event_dict["content"]["third_party_invite"]["display_name"] = display_name + else: logger.info( - "Could not find invite event for third_party_invite - " - "discarding: %s" % (event_dict,) + "Could not find invite event for third_party_invite: %r", + event_dict ) - return + # We don't discard here as this is not the appropriate place to do + # auth checks. If we need the invite and don't have it then the + # auth check code will explode appropriately. - display_name = original_invite.content["display_name"] - event_dict["content"]["third_party_invite"]["display_name"] = display_name builder = self.event_builder_factory.new(event_dict) EventValidator().validate_new(builder) message_handler = self.hs.get_handlers().message_handler |