canonical-json: Apply the redaction rules of latest room version by default

This commit is contained in:
Kévin Commaille 2023-08-11 14:50:28 +02:00 committed by Kévin Commaille
parent 399adc911f
commit bb6edd26bb

View File

@ -260,15 +260,26 @@ static ALLOWED_KEYS: &[&str] = &[
fn allowed_content_keys_for(event_type: &str, version: &RoomVersionId) -> &'static [&'static str] { fn allowed_content_keys_for(event_type: &str, version: &RoomVersionId) -> &'static [&'static str] {
match event_type { match event_type {
"m.room.member" => match version { "m.room.member" => match version {
RoomVersionId::V9 | RoomVersionId::V10 => { RoomVersionId::V1
&["membership", "join_authorised_via_users_server"] | RoomVersionId::V2
} | RoomVersionId::V3
_ => &["membership"], | RoomVersionId::V4
| RoomVersionId::V5
| RoomVersionId::V6
| RoomVersionId::V7
| RoomVersionId::V8 => &["membership"],
_ => &["membership", "join_authorised_via_users_server"],
}, },
"m.room.create" => &["creator"], "m.room.create" => &["creator"],
"m.room.join_rules" => match version { "m.room.join_rules" => match version {
RoomVersionId::V8 | RoomVersionId::V9 | RoomVersionId::V10 => &["join_rule", "allow"], RoomVersionId::V1
_ => &["join_rule"], | RoomVersionId::V2
| RoomVersionId::V3
| RoomVersionId::V4
| RoomVersionId::V5
| RoomVersionId::V6
| RoomVersionId::V7 => &["join_rule"],
_ => &["join_rule", "allow"],
}, },
"m.room.power_levels" => &[ "m.room.power_levels" => &[
"ban", "ban",