From c1630247b1f1f60a5bc1b9655582702191202e64 Mon Sep 17 00:00:00 2001 From: lda Date: Fri, 24 May 2024 16:52:31 +0200 Subject: [PATCH] [FIX/WIP] Fix bug where banned users could be invited. There seems to be another, much more annoying bug going down with one of the servers I've tested on, but I don't know how to fix it as of now. --- src/Room.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/Room.c b/src/Room.c index 7670dbf..adc253b 100644 --- a/src/Room.c +++ b/src/Room.c @@ -310,10 +310,9 @@ RoomPopulate(Room *room, User *user, RoomCreateRequest *req, ServerPart s) JsonFree(RoomEventSend(room, event)); JsonFree(event); - /* TODO: The rest of the events mandated by the specification on - * POST /createRoom, and error management. */ - Free(sender_str); + + /* TODO: Error management (and invite_3pid, later) */ } Room * RoomCreate(Db * db, User *user, RoomCreateRequest * req, ServerPart s) @@ -676,7 +675,8 @@ PopulateEventV1(Room * room, HashMap * event, PduV1 * pdu, ServerPart serv) ArrayAdd(pdu->prev_events, JsonValueDuplicate(event_id)); } - /* TODO: Signature and alldat. */ + /* TODO: Signatures. + * We currently *don't* have an Ed25519 implementation. */ return false; } @@ -998,7 +998,7 @@ AuthorizeInviteMembershipV1(Room * room, PduV1 pdu, HashMap *state) } /* Step 5.3.3: If target user’s current membership state is join or ban, reject. */ if (RoomUserHasMembership(room, state, pdu.state_key, "join") || - RoomUserHasMembership(room, state, pdu.state_key, "join")) + RoomUserHasMembership(room, state, pdu.state_key, "ban")) { return false; }