From 5f282434644bc45d25ad8ecd176f5d52761abe1b Mon Sep 17 00:00:00 2001 From: Neil Alexander Date: Mon, 4 May 2020 17:16:57 +0100 Subject: [PATCH] Tidy a bit --- federationsender/internal/perform.go | 6 +++--- roomserver/internal/perform_leave.go | 20 ++++++++++---------- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/federationsender/internal/perform.go b/federationsender/internal/perform.go index 7b9fbedd5..cc23f5448 100644 --- a/federationsender/internal/perform.go +++ b/federationsender/internal/perform.go @@ -169,7 +169,7 @@ func (r *FederationSenderInternalAPI) PerformLeave( ) if err != nil { // TODO: Check if the user was not allowed to leave the room. - return fmt.Errorf("r.federation.MakeLeave: %w", err) + return err } // Set all the fields to be what they should be, this should be a no-op @@ -225,7 +225,7 @@ func (r *FederationSenderInternalAPI) PerformLeave( // If we reach here then we didn't complete a leave for some reason. return fmt.Errorf( - "failed to leave user %q from room %q through %d server(s)", - request.UserID, request.RoomID, len(request.ServerNames), + "Failed to leave room %q through %d server(s)", + request.RoomID, len(request.ServerNames), ) } diff --git a/roomserver/internal/perform_leave.go b/roomserver/internal/perform_leave.go index e9ac1e7ab..1d6d47145 100644 --- a/roomserver/internal/perform_leave.go +++ b/roomserver/internal/perform_leave.go @@ -40,10 +40,7 @@ func (r *RoomserverInternalAPI) performLeaveRoomByID( // that. senderUser, err := r.isInvitePending(ctx, req, res) if err == nil { - fmt.Println("Responding to invite") return r.performRejectInvite(ctx, req, res, senderUser) - } else { - fmt.Println("Not responding to invite:", err) } // First of all we want to find out if the room exists and if the @@ -62,21 +59,21 @@ func (r *RoomserverInternalAPI) performLeaveRoomByID( return err } if !latestRes.RoomExists { - return fmt.Errorf("room %q does not exist", req.RoomID) + return fmt.Errorf("Room %q does not exist", req.RoomID) } // Now let's see if the user is in the room. if len(latestRes.StateEvents) == 0 { - return fmt.Errorf("user %q is not a member of room %q", req.UserID, req.RoomID) + return fmt.Errorf("User %q is not a member of room %q", req.UserID, req.RoomID) } membership, err := latestRes.StateEvents[0].Membership() if err != nil { - return fmt.Errorf("error getting membership: %w", err) + return fmt.Errorf("Error getting membership: %w", err) } if membership != "join" { // TODO: should be able to handle "invite" in this case too, if // it's a case of kicking or banning or such - return fmt.Errorf("user %q is not joined to the room (membership is %q)", req.UserID, membership) + return fmt.Errorf("User %q is not joined to the room (membership is %q)", req.UserID, membership) } // Prepare the template for the leave event. @@ -102,7 +99,7 @@ func (r *RoomserverInternalAPI) performLeaveRoomByID( buildRes := api.QueryLatestEventsAndStateResponse{} event, err := common.BuildEvent( ctx, // the request context - &eb, // the template join event + &eb, // the template leave event r.Cfg, // the server configuration time.Now(), // the event timestamp to use r, // the roomserver API to use @@ -141,7 +138,7 @@ func (r *RoomserverInternalAPI) performRejectInvite( ) error { _, domain, err := gomatrixserverlib.SplitID('@', senderUser) if err != nil { - return fmt.Errorf("user ID %q invalid: %w", senderUser, err) + return fmt.Errorf("User ID %q invalid: %w", senderUser, err) } // Ask the federation sender to perform a federated leave for us. @@ -152,9 +149,12 @@ func (r *RoomserverInternalAPI) performRejectInvite( } leaveRes := fsAPI.PerformLeaveResponse{} if err := r.fsAPI.PerformLeave(ctx, &leaveReq, &leaveRes); err != nil { - return fmt.Errorf("fsAPI.PerformLeave: %w", err) + return err } + // TODO: Withdraw the invite, so that the sync API etc are + // notified that we rejected it. + return nil }