From 048f86ef5d87a2f11baf907c785a3558912baefe Mon Sep 17 00:00:00 2001 From: Brendan Abolivier Date: Wed, 17 Jul 2019 14:54:58 +0200 Subject: Fix check of the association between a 3PID invite and the subsequent m.room.member event in the 3rd party rules --- synapse/third_party_rules/access_rules.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/synapse/third_party_rules/access_rules.py b/synapse/third_party_rules/access_rules.py index c8698c66cc..521b0347a4 100644 --- a/synapse/third_party_rules/access_rules.py +++ b/synapse/third_party_rules/access_rules.py @@ -454,5 +454,11 @@ class RoomAccessRules(object): invite (EventBase): The m.room.member event with "invite" membership. threepid_invite_token (str): The state key from the 3PID invite. """ - token = invite.content.get("third_party_signed", {}).get("token", "") + if "third_party_signed" in invite.content: + token = invite.content.get("third_party_signed", {}).get("token", "") + else: + token = invite.content.get( + "third_party_invite", {}, + ).get("signed", {}).get("token", "") + return token == threepid_invite_token -- cgit 1.5.1