diff options
author | Eric Eastwood <erice@element.io> | 2021-07-21 05:29:57 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-07-21 10:29:57 +0000 |
commit | 2d89c66b8811aa4968aefea3572f174fa00cc3c2 (patch) | |
tree | b3e16e23a6c7e2c11f788717ecaa6e4a78493b51 /synapse/api | |
parent | Merge tag 'v1.39.0rc1' into develop (diff) | |
download | synapse-2d89c66b8811aa4968aefea3572f174fa00cc3c2.tar.xz |
Switch to `chunk` events so we can auth via power_levels (MSC2716) (#10432)
Previously, we were using `content.chunk_id` to connect one chunk to another. But these events can be from any `sender` and we can't tell who should be able to send historical events. We know we only want the application service to do it but these events have the sender of a real historical message, not the application service user ID as the sender. Other federated homeservers also have no indicator which senders are an application service on the originating homeserver. So we want to auth all of the MSC2716 events via power_levels and have them be sent by the application service with proper PL levels in the room.
Diffstat (limited to 'synapse/api')
-rw-r--r-- | synapse/api/constants.py | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/synapse/api/constants.py b/synapse/api/constants.py index 8363c2bb0f..4caafc0ac9 100644 --- a/synapse/api/constants.py +++ b/synapse/api/constants.py @@ -120,6 +120,7 @@ class EventTypes: SpaceParent = "m.space.parent" MSC2716_INSERTION = "org.matrix.msc2716.insertion" + MSC2716_CHUNK = "org.matrix.msc2716.chunk" MSC2716_MARKER = "org.matrix.msc2716.marker" @@ -190,9 +191,10 @@ class EventContentFields: # Used on normal messages to indicate they were historically imported after the fact MSC2716_HISTORICAL = "org.matrix.msc2716.historical" - # For "insertion" events + # For "insertion" events to indicate what the next chunk ID should be in + # order to connect to it MSC2716_NEXT_CHUNK_ID = "org.matrix.msc2716.next_chunk_id" - # Used on normal message events to indicate where the chunk connects to + # Used on "chunk" events to indicate which insertion event it connects to MSC2716_CHUNK_ID = "org.matrix.msc2716.chunk_id" # For "marker" events MSC2716_MARKER_INSERTION = "org.matrix.msc2716.marker.insertion" |