aboutsummaryrefslogtreecommitdiff
path: root/clientapi/routing
diff options
context:
space:
mode:
authorTill <2353100+S7evinK@users.noreply.github.com>2024-02-13 19:28:52 +0100
committerGitHub <noreply@github.com>2024-02-13 19:28:52 +0100
commite9deb5244edd4827234622ea0d3b11678a33b0ac (patch)
tree8b5d4bc7da6b305ef506b85fbe1ac2a99f3dd1dd /clientapi/routing
parentbe0c27e68865f031e59a091fcec5244a7b48da44 (diff)
Fix `/createRoom` and `/invite` containing displayname/avatarURL of inviter (#3326)
Fixes #3324
Diffstat (limited to 'clientapi/routing')
-rw-r--r--clientapi/routing/membership.go31
-rw-r--r--clientapi/routing/server_notices.go2
2 files changed, 12 insertions, 21 deletions
diff --git a/clientapi/routing/membership.go b/clientapi/routing/membership.go
index 06683c47..9e41a379 100644
--- a/clientapi/routing/membership.go
+++ b/clientapi/routing/membership.go
@@ -324,19 +324,18 @@ func SendInvite(
}
// We already received the return value, so no need to check for an error here.
- response, _ := sendInvite(req.Context(), profileAPI, device, roomID, body.UserID, body.Reason, cfg, rsAPI, asAPI, evTime)
+ response, _ := sendInvite(req.Context(), device, roomID, body.UserID, body.Reason, cfg, rsAPI, evTime)
return response
}
// sendInvite sends an invitation to a user. Returns a JSONResponse and an error
func sendInvite(
ctx context.Context,
- profileAPI userapi.ClientUserAPI,
device *userapi.Device,
roomID, userID, reason string,
cfg *config.ClientAPI,
rsAPI roomserverAPI.ClientRoomserverAPI,
- asAPI appserviceAPI.AppServiceInternalAPI, evTime time.Time,
+ evTime time.Time,
) (util.JSONResponse, error) {
validRoomID, err := spec.NewRoomID(roomID)
if err != nil {
@@ -359,13 +358,7 @@ func sendInvite(
JSON: spec.InvalidParam("UserID is invalid"),
}, err
}
- profile, err := loadProfile(ctx, userID, cfg, profileAPI, asAPI)
- if err != nil {
- return util.JSONResponse{
- Code: http.StatusInternalServerError,
- JSON: spec.InternalServerError{},
- }, err
- }
+
identity, err := cfg.Matrix.SigningIdentityFor(device.UserDomain())
if err != nil {
return util.JSONResponse{
@@ -375,16 +368,14 @@ func sendInvite(
}
err = rsAPI.PerformInvite(ctx, &api.PerformInviteRequest{
InviteInput: roomserverAPI.InviteInput{
- RoomID: *validRoomID,
- Inviter: *inviter,
- Invitee: *invitee,
- DisplayName: profile.DisplayName,
- AvatarURL: profile.AvatarURL,
- Reason: reason,
- IsDirect: false,
- KeyID: identity.KeyID,
- PrivateKey: identity.PrivateKey,
- EventTime: evTime,
+ RoomID: *validRoomID,
+ Inviter: *inviter,
+ Invitee: *invitee,
+ Reason: reason,
+ IsDirect: false,
+ KeyID: identity.KeyID,
+ PrivateKey: identity.PrivateKey,
+ EventTime: evTime,
},
InviteRoomState: nil, // ask the roomserver to draw up invite room state for us
SendAsServer: string(device.UserDomain()),
diff --git a/clientapi/routing/server_notices.go b/clientapi/routing/server_notices.go
index 5deb559d..d4644b3e 100644
--- a/clientapi/routing/server_notices.go
+++ b/clientapi/routing/server_notices.go
@@ -215,7 +215,7 @@ func SendServerNotice(
}
if !membershipRes.IsInRoom {
// re-invite the user
- res, err := sendInvite(ctx, userAPI, senderDevice, roomID, r.UserID, "Server notice room", cfgClient, rsAPI, asAPI, time.Now())
+ res, err := sendInvite(ctx, senderDevice, roomID, r.UserID, "Server notice room", cfgClient, rsAPI, time.Now())
if err != nil {
return res
}