diff options
author | Patrick Cloke <clokep@users.noreply.github.com> | 2023-10-06 07:27:35 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-10-06 07:27:35 -0400 |
commit | fc31b495b3a7f170019591c2e40e699b61c067a1 (patch) | |
tree | 5ce86bdde4e854831a93c3042b75ad7d2a7d8d08 /synapse/handlers/federation.py | |
parent | Fix comments related to replication. (#16428) (diff) | |
download | synapse-fc31b495b3a7f170019591c2e40e699b61c067a1.tar.xz |
Stop sending incorrect knock_state_events. (#16403)
Synapse was incorrectly implemented with a knock_state_events property on some APIs (instead of knock_room_state). This was correct in Synapse 1.70.0, but *both* fields were sent to also be compatible with Synapse versions expecting the wrong field. Enough time has passed that only the correct field needs to be included/handled.
Diffstat (limited to 'synapse/handlers/federation.py')
-rw-r--r-- | synapse/handlers/federation.py | 13 |
1 files changed, 2 insertions, 11 deletions
diff --git a/synapse/handlers/federation.py b/synapse/handlers/federation.py index 29cd45550a..807a0867cc 100644 --- a/synapse/handlers/federation.py +++ b/synapse/handlers/federation.py @@ -868,19 +868,10 @@ class FederationHandler: # This is a bit of a hack and is cribbing off of invites. Basically we # store the room state here and retrieve it again when this event appears # in the invitee's sync stream. It is stripped out for all other local users. - stripped_room_state = ( - knock_response.get("knock_room_state") - # Since v1.37, Synapse incorrectly used "knock_state_events" for this field. - # Thus, we also check for a 'knock_state_events' to support old instances. - # See https://github.com/matrix-org/synapse/issues/14088. - or knock_response.get("knock_state_events") - ) + stripped_room_state = knock_response.get("knock_room_state") if stripped_room_state is None: - raise KeyError( - "Missing 'knock_room_state' (or legacy 'knock_state_events') field in " - "send_knock response" - ) + raise KeyError("Missing 'knock_room_state' field in send_knock response") event.unsigned["knock_room_state"] = stripped_room_state |