From 303ad4ab9c359df2aff57cb2afc073d0554e0c74 Mon Sep 17 00:00:00 2001 From: timedout Date: Sun, 29 Mar 2026 14:18:13 +0100 Subject: [PATCH] fix: Don't include `origin` in remote memberships --- src/api/client/membership/knock.rs | 5 ----- src/api/client/membership/leave.rs | 16 ++-------------- 2 files changed, 2 insertions(+), 19 deletions(-) diff --git a/src/api/client/membership/knock.rs b/src/api/client/membership/knock.rs index e589aa11c..9791bacc2 100644 --- a/src/api/client/membership/knock.rs +++ b/src/api/client/membership/knock.rs @@ -409,11 +409,6 @@ async fn knock_room_helper_local( room_id, &knock_event_stub, )?; - - knock_event_stub.insert( - "origin".to_owned(), - CanonicalJsonValue::String(services.globals.server_name().as_str().to_owned()), - ); knock_event_stub.insert( "origin_server_ts".to_owned(), CanonicalJsonValue::Integer( diff --git a/src/api/client/membership/leave.rs b/src/api/client/membership/leave.rs index db98907ef..fd7c73a06 100644 --- a/src/api/client/membership/leave.rs +++ b/src/api/client/membership/leave.rs @@ -9,7 +9,7 @@ use conduwuit::{ }; use futures::{FutureExt, StreamExt, pin_mut}; use ruma::{ - CanonicalJsonObject, CanonicalJsonValue, OwnedServerName, RoomId, RoomVersionId, UserId, + CanonicalJsonObject, CanonicalJsonValue, OwnedServerName, RoomId, UserId, api::{ client::membership::leave_room, federation::{self}, @@ -337,6 +337,7 @@ pub async fn remote_leave_room( "Invalid make_leave event json received from {remote_server} for {room_id}: {e:?}" ))) })?; + leave_event_stub.remove("event_id"); validate_remote_member_event_stub( &MembershipState::Leave, @@ -345,11 +346,6 @@ pub async fn remote_leave_room( &leave_event_stub, )?; - // TODO: Is origin needed? - leave_event_stub.insert( - "origin".to_owned(), - CanonicalJsonValue::String(services.globals.server_name().as_str().to_owned()), - ); leave_event_stub.insert( "origin_server_ts".to_owned(), CanonicalJsonValue::Integer( @@ -365,14 +361,6 @@ pub async fn remote_leave_room( } } - // room v3 and above removed the "event_id" field from remote PDU format - match room_version_id { - | RoomVersionId::V1 | RoomVersionId::V2 => {}, - | _ => { - leave_event_stub.remove("event_id"); - }, - } - // In order to create a compatible ref hash (EventID) the `hashes` field needs // to be present services