Kick over Federation doesn't work #199

Closed
opened 2021-12-08 10:45:15 +00:00 by shsorbom · 9 comments
shsorbom commented 2021-12-08 10:45:15 +00:00 (Migrated from gitlab.com)

Description

Kicking a federated user seems to have no effect, but if the user leaves voluntarily, they cannot rejoin at all.

System Configuration

Conduit Version: Conduit-Next
Database backend (default is sqlite): sqlite

<!-- If you're requesting a new feature, that isn't part of this project yet, then please consider filling out a "Feature Request" instead! If you need a hand setting up your conduit server, feel free to ask for help in the Conduit Matrix Chat: https://matrix.to/#/#conduit:fachschaften.org. --> ### Description <!-- What did you do and what happened? Why is that bad? --> Kicking a federated user seems to have no effect, but if the user *leaves* voluntarily, they cannot rejoin at all. ### System Configuration <!-- Other data that might help us debug this issue, like os, conduit version, database backend --> Conduit Version: Conduit-Next Database backend (default is sqlite): sqlite
shsorbom commented 2021-12-08 10:45:50 +00:00 (Migrated from gitlab.com)

changed the description

changed the description
jfowl commented 2021-12-14 13:24:40 +00:00 (Migrated from gitlab.com)

@shsorbom could you tell a bit more about the server setup? Were both servers Conduit, was one of them Synapse, if yes, which version, etc.

  • Should work, needs to be replicated by Timo.
@shsorbom could you tell a bit more about the server setup? Were both servers Conduit, was one of them Synapse, if yes, which version, etc. - Should work, needs to be replicated by Timo.
timokoesters commented 2021-12-14 13:30:00 +00:00 (Migrated from gitlab.com)

Please also check for warnings in the conduit and synapse logs.

Please also check for warnings in the conduit and synapse logs.
shsorbom commented 2021-12-14 17:17:03 +00:00 (Migrated from gitlab.com)

I discovered it by accident when using someone else's server, so I'm fairly sure the servers being kicked were synapse servers(Apothecary.Club and Riot.Firechicken.net). Mine is a conduit server. I am currently trying to replicate this setup on my lan, but I haven't finished setting up the servers themselves yet.

I discovered it by accident when using someone else's server, so I'm fairly sure the servers being kicked were synapse servers(Apothecary.Club and Riot.Firechicken.net). Mine is a conduit server. I am currently trying to replicate this setup on my lan, but I haven't finished setting up the servers themselves yet.
M0dEx commented 2022-04-02 22:13:43 +00:00 (Migrated from gitlab.com)

I managed to replicate this with a room on my Conduit server and a user from the matrix.org server.

After kicking a user they still see the room and can send messages. Those messages are however not received by anyone else with this WARN from Conduit:

[Apr 02 22:07:32.046] [WARN] conduit::server_server: Using cached state
[Apr 02 22:07:32.047] [WARN] ruma_state_res::event_auth: sender's membership is not join
[Apr 02 22:07:32.052] [WARN] conduit::server_server: Event was soft failed: PduEvent { event_id: "$6N-M1FL3gVvNAI0wpbqJf7Wo8aLlqEBk76yi6JCSx_o", room_id: "!9MDn9YK1Zy7iq2jF3b:matrix.m0dex.eu", sender: "@m0dex:matrix.org", origin_server_ts: 1648937251943, kind: RoomMessage, content: RawValue({"body":"asd","msgtype":"m.text","org.matrix.msc1767.text":"asd"}), state_key: None, prev_events: ["$1oz5FyPg9opFKvnCTdWHYkkn7nJHHLFgGM6lmhopM9s"], depth: 14, auth_events: ["$hxshanCi1d3tVfl-KY0m1dowsKOKVQNMT-xKIb641k4", "$XHsi-5itbxPojUnU22EvY4gj6dhd_Kb_eZT0C7itbpk", "$MLEFB0MVZUlaTQVG4zZwEL1d-rMBurGVEZczCMSSca8"], redacts: None, unsigned: Some(RawValue({"age_ts":1648937251943})), hashes: EventHash { sha256: "YUVqK4nkGrKJMshMUn0XUaCcsvBlxGSo98hYPAGMQTw" }, signatures: Some(RawValue({"matrix.org":{"ed25519:a_RXGa":"SpRVKwZH4h2kRZniNfIOKPlxgAjAn4m1//A3O5JkLnazVb74gFygv7fKVUThWlOKyLS4JcLiaGIWlE3zTeEyCg"}})) }

The same thing happens when banning the user as well, so it seems like Conduit does not correctly inform other servers of the membership change.

I managed to replicate this with a room on my Conduit server and a user from the `matrix.org` server. After kicking a user they still see the room and can send messages. Those messages are however not received by anyone else with this WARN from Conduit: ```text [Apr 02 22:07:32.046] [WARN] conduit::server_server: Using cached state [Apr 02 22:07:32.047] [WARN] ruma_state_res::event_auth: sender's membership is not join [Apr 02 22:07:32.052] [WARN] conduit::server_server: Event was soft failed: PduEvent { event_id: "$6N-M1FL3gVvNAI0wpbqJf7Wo8aLlqEBk76yi6JCSx_o", room_id: "!9MDn9YK1Zy7iq2jF3b:matrix.m0dex.eu", sender: "@m0dex:matrix.org", origin_server_ts: 1648937251943, kind: RoomMessage, content: RawValue({"body":"asd","msgtype":"m.text","org.matrix.msc1767.text":"asd"}), state_key: None, prev_events: ["$1oz5FyPg9opFKvnCTdWHYkkn7nJHHLFgGM6lmhopM9s"], depth: 14, auth_events: ["$hxshanCi1d3tVfl-KY0m1dowsKOKVQNMT-xKIb641k4", "$XHsi-5itbxPojUnU22EvY4gj6dhd_Kb_eZT0C7itbpk", "$MLEFB0MVZUlaTQVG4zZwEL1d-rMBurGVEZczCMSSca8"], redacts: None, unsigned: Some(RawValue({"age_ts":1648937251943})), hashes: EventHash { sha256: "YUVqK4nkGrKJMshMUn0XUaCcsvBlxGSo98hYPAGMQTw" }, signatures: Some(RawValue({"matrix.org":{"ed25519:a_RXGa":"SpRVKwZH4h2kRZniNfIOKPlxgAjAn4m1//A3O5JkLnazVb74gFygv7fKVUThWlOKyLS4JcLiaGIWlE3zTeEyCg"}})) } ``` The same thing happens when banning the user as well, so it seems like Conduit does not correctly inform other servers of the membership change.
M0dEx commented 2022-04-03 09:02:01 +00:00 (Migrated from gitlab.com)

Correct me if I am wrong, but I think Conduit does not send the event to any server but itself.

Correct me if I am wrong, but I think Conduit does not send the event to any server but itself.
timokoesters commented 2022-04-03 14:31:37 +00:00 (Migrated from gitlab.com)

assigned to @M0dEx

assigned to @M0dEx
M0dEx commented 2022-04-03 16:59:45 +00:00 (Migrated from gitlab.com)

mentioned in merge request !338

mentioned in merge request !338
timokoesters commented 2022-04-03 17:59:16 +00:00 (Migrated from gitlab.com)

mentioned in commit 9ed352d4c0

mentioned in commit 9ed352d4c0dee53de27ef6ee41b625f8149bd3e4
Sign in to join this conversation.
No labels
Android
CS::needs customer feedback
CS::needs follow up
CS::needs on prem installation
CS::waiting
Chrome
Design:: Ready
Design:: in progress
Design::UX
E2EE
Edge
Firefox
GDPR
Iteration 13 IM
Linux
MacOS
Need::Discussion
Need::Steps to reproduce
Need::Upstream fix
Needs:: Planning
Needs::Dev-Team
Needs::More information
Needs::Priority
Needs::Product
Needs::Refinement
Needs::Severity
Priority::1-Critical
Priority::2-Max
Priority::3-Impending
Priority::4-High
Priority::5-Medium
Priority::6-Low
Priority::7-None
Progress::Backlog
Progress::Review
Progress::Started
Progress::Testing
Progress::Triage
Progress::Waiting
Reporter::Sentry
Safari
Target::Community
Target::Customer
Target::Internal
Target::PoC
Target::Security
Team:Customer-Success
Team:Design
Team:Infrastructure
Team:Instant-Messaging
Team:Product
Team:Workflows
Type::Bug
Type::Design
Type::Documentation
Type::Feature
Type::Improvement
Type::Support
Type::Tests
Windows
blocked
blocked-by-spec
cla-signed
conduit
contribution::advanced
contribution::easy
contribution::help needed
from::review
iOS
p::ti-tenant
performance
product::triage
proposal
refactor
release-blocker
s: dart_openapi_codegen
s::Famedly-Patient
s::Org-Directory
s::Passport-Generator
s::Requeuest
s:CRM
s:Famedly-App
s:Famedly-Web
s:Fhiroxide
s:Fhiroxide-cli
s:Fhiroxide-client
s:Fhirs
s:Hedwig
s:LISA
s:Matrix-Dart-SDK
s:Role-Manager
s:Synapse
s:User-Directory
s:WFS-Matrix
s:Workflow Engine
s:dtls
s:famedly-error
s:fcm-shared-isolate
s:matrix-api-lite
s:multiple-tab-detector
s:native-imaging
severity::1
severity::2
severity::3
severity::4
technical-debt
voip
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: Matthias/conduit#199
No description provided.