From 5058157cfaa89526cf70997551f32378d5d25a2b Mon Sep 17 00:00:00 2001 From: Will Hunt Date: Fri, 26 Feb 2021 16:43:40 +0000 Subject: [PATCH] Check membership in GetMemberships --- clientapi/routing/memberships.go | 5 +++++ roomserver/api/query.go | 2 -- roomserver/internal/query/query.go | 5 ----- 3 files changed, 5 insertions(+), 7 deletions(-) diff --git a/clientapi/routing/memberships.go b/clientapi/routing/memberships.go index 6ddcf1be3..a4086832f 100644 --- a/clientapi/routing/memberships.go +++ b/clientapi/routing/memberships.go @@ -57,6 +57,11 @@ func GetMemberships( _ *config.ClientAPI, rsAPI api.RoomserverInternalAPI, ) util.JSONResponse { + resErr := checkMemberInRoom(req.Context(), rsAPI, device.UserID, roomID) + if resErr != nil { + return *resErr + } + queryReq := api.QueryMembershipsForRoomRequest{ JoinedOnly: joinedOnly, RoomID: roomID, diff --git a/roomserver/api/query.go b/roomserver/api/query.go index 43bbfd16d..657f1a6dd 100644 --- a/roomserver/api/query.go +++ b/roomserver/api/query.go @@ -151,8 +151,6 @@ type QueryMembershipsForRoomRequest struct { JoinedOnly bool `json:"joined_only"` // ID of the room to fetch memberships from RoomID string `json:"room_id"` - // ID of the user sending the request - Sender string `json:"sender"` } // QueryMembershipsForRoomResponse is a response to QueryMembershipsForRoom diff --git a/roomserver/internal/query/query.go b/roomserver/internal/query/query.go index 3aa51726e..7ff8d84e4 100644 --- a/roomserver/internal/query/query.go +++ b/roomserver/internal/query/query.go @@ -243,11 +243,6 @@ func (r *Queryer) QueryMembershipsForRoom( return err } - membershipEventNID, stillInRoom, isRoomforgotten, err := r.DB.GetMembership(ctx, info.RoomNID, request.Sender) - if err != nil { - return err - } - response.IsRoomForgotten = isRoomforgotten if membershipEventNID == 0 {