mirror of
https://github.com/matrix-org/dendrite.git
synced 2026-01-11 08:03:09 -06:00
Address review comments
This commit is contained in:
parent
2f8972bee8
commit
138f0191b1
|
|
@ -236,8 +236,8 @@ func RemoveLocalAlias(
|
||||||
validRoomID, err := spec.NewRoomID(roomIDRes.RoomID)
|
validRoomID, err := spec.NewRoomID(roomIDRes.RoomID)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return util.JSONResponse{
|
return util.JSONResponse{
|
||||||
Code: http.StatusNotFound,
|
Code: http.StatusBadRequest,
|
||||||
JSON: spec.NotFound("The alias does not exist."),
|
JSON: spec.BadJSON("The roomID is invalid."),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
deviceSenderID, err := rsAPI.QuerySenderIDForUser(req.Context(), *validRoomID, *userID)
|
deviceSenderID, err := rsAPI.QuerySenderIDForUser(req.Context(), *validRoomID, *userID)
|
||||||
|
|
|
||||||
|
|
@ -840,16 +840,17 @@ func (r *Inputer) kickGuests(ctx context.Context, event gomatrixserverlib.PDU, r
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
validRoomID, err := spec.NewRoomID(event.RoomID())
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
prevEvents := latestRes.LatestEvents
|
prevEvents := latestRes.LatestEvents
|
||||||
for _, memberEvent := range memberEvents {
|
for _, memberEvent := range memberEvents {
|
||||||
if memberEvent.StateKey() == nil {
|
if memberEvent.StateKey() == nil {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
validRoomID, err := spec.NewRoomID(memberEvent.RoomID())
|
|
||||||
if err != nil {
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
memberUserID, err := r.Queryer.QueryUserIDForSender(ctx, *validRoomID, spec.SenderID(*memberEvent.StateKey()))
|
memberUserID, err := r.Queryer.QueryUserIDForSender(ctx, *validRoomID, spec.SenderID(*memberEvent.StateKey()))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
continue
|
continue
|
||||||
|
|
|
||||||
|
|
@ -66,9 +66,9 @@ func (c *Creator) PerformCreateRoom(ctx context.Context, userID spec.UserID, roo
|
||||||
var senderID spec.SenderID
|
var senderID spec.SenderID
|
||||||
if createRequest.RoomVersion == gomatrixserverlib.RoomVersionPseudoIDs {
|
if createRequest.RoomVersion == gomatrixserverlib.RoomVersionPseudoIDs {
|
||||||
// create user room key if needed
|
// create user room key if needed
|
||||||
key, err := c.RSAPI.GetOrCreateUserRoomPrivateKey(ctx, userID, roomID)
|
key, keyErr := c.RSAPI.GetOrCreateUserRoomPrivateKey(ctx, userID, roomID)
|
||||||
if err != nil {
|
if keyErr != nil {
|
||||||
util.GetLogger(ctx).WithError(err).Error("GetOrCreateUserRoomPrivateKey failed")
|
util.GetLogger(ctx).WithError(keyErr).Error("GetOrCreateUserRoomPrivateKey failed")
|
||||||
return "", &util.JSONResponse{
|
return "", &util.JSONResponse{
|
||||||
Code: http.StatusInternalServerError,
|
Code: http.StatusInternalServerError,
|
||||||
JSON: spec.InternalServerError{},
|
JSON: spec.InternalServerError{},
|
||||||
|
|
|
||||||
|
|
@ -204,10 +204,10 @@ func (r *Joiner) performJoinRoomByID(
|
||||||
checkInvitePending = true
|
checkInvitePending = true
|
||||||
} else {
|
} else {
|
||||||
// create user room key if needed
|
// create user room key if needed
|
||||||
key, err := r.RSAPI.GetOrCreateUserRoomPrivateKey(ctx, *userID, *roomID)
|
key, keyErr := r.RSAPI.GetOrCreateUserRoomPrivateKey(ctx, *userID, *roomID)
|
||||||
if err != nil {
|
if keyErr != nil {
|
||||||
util.GetLogger(ctx).WithError(err).Error("GetOrCreateUserRoomPrivateKey failed")
|
util.GetLogger(ctx).WithError(keyErr).Error("GetOrCreateUserRoomPrivateKey failed")
|
||||||
return "", "", fmt.Errorf("GetOrCreateUserRoomPrivateKey failed: %w", err)
|
return "", "", fmt.Errorf("GetOrCreateUserRoomPrivateKey failed: %w", keyErr)
|
||||||
}
|
}
|
||||||
senderID = spec.SenderID(spec.Base64Bytes(key).Encode())
|
senderID = spec.SenderID(spec.Base64Bytes(key).Encode())
|
||||||
}
|
}
|
||||||
|
|
@ -222,8 +222,8 @@ func (r *Joiner) performJoinRoomByID(
|
||||||
// Force a federated join if we're dealing with a pending invite
|
// Force a federated join if we're dealing with a pending invite
|
||||||
// and we aren't in the room.
|
// and we aren't in the room.
|
||||||
if checkInvitePending {
|
if checkInvitePending {
|
||||||
isInvitePending, inviteSender, _, inviteEvent, err := helpers.IsInvitePending(ctx, r.DB, req.RoomIDOrAlias, senderID)
|
isInvitePending, inviteSender, _, inviteEvent, inviteErr := helpers.IsInvitePending(ctx, r.DB, req.RoomIDOrAlias, senderID)
|
||||||
if err == nil && !serverInRoom && isInvitePending {
|
if inviteErr == nil && !serverInRoom && isInvitePending {
|
||||||
inviter, queryErr := r.RSAPI.QueryUserIDForSender(ctx, *roomID, inviteSender)
|
inviter, queryErr := r.RSAPI.QueryUserIDForSender(ctx, *roomID, inviteSender)
|
||||||
if queryErr != nil {
|
if queryErr != nil {
|
||||||
return "", "", fmt.Errorf("r.RSAPI.QueryUserIDForSender: %w", queryErr)
|
return "", "", fmt.Errorf("r.RSAPI.QueryUserIDForSender: %w", queryErr)
|
||||||
|
|
|
||||||
|
|
@ -170,14 +170,14 @@ func TrackChangedUsers(
|
||||||
return nil, nil, err
|
return nil, nil, err
|
||||||
}
|
}
|
||||||
for roomID, state := range stateRes.Rooms {
|
for roomID, state := range stateRes.Rooms {
|
||||||
|
validRoomID, roomErr := spec.NewRoomID(roomID)
|
||||||
|
if roomErr != nil {
|
||||||
|
continue
|
||||||
|
}
|
||||||
for tuple, membership := range state {
|
for tuple, membership := range state {
|
||||||
if membership != spec.Join {
|
if membership != spec.Join {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
validRoomID, roomErr := spec.NewRoomID(roomID)
|
|
||||||
if roomErr != nil {
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
user, queryErr := rsAPI.QueryUserIDForSender(ctx, *validRoomID, spec.SenderID(tuple.StateKey))
|
user, queryErr := rsAPI.QueryUserIDForSender(ctx, *validRoomID, spec.SenderID(tuple.StateKey))
|
||||||
if queryErr != nil || user == nil {
|
if queryErr != nil || user == nil {
|
||||||
continue
|
continue
|
||||||
|
|
@ -220,16 +220,16 @@ func TrackChangedUsers(
|
||||||
return nil, left, err
|
return nil, left, err
|
||||||
}
|
}
|
||||||
for roomID, state := range stateRes.Rooms {
|
for roomID, state := range stateRes.Rooms {
|
||||||
|
validRoomID, err := spec.NewRoomID(roomID)
|
||||||
|
if err != nil {
|
||||||
|
continue
|
||||||
|
}
|
||||||
for tuple, membership := range state {
|
for tuple, membership := range state {
|
||||||
if membership != spec.Join {
|
if membership != spec.Join {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
// new user who we weren't previously sharing rooms with
|
// new user who we weren't previously sharing rooms with
|
||||||
if _, ok := queryRes.UserIDsToCount[tuple.StateKey]; !ok {
|
if _, ok := queryRes.UserIDsToCount[tuple.StateKey]; !ok {
|
||||||
validRoomID, err := spec.NewRoomID(roomID)
|
|
||||||
if err != nil {
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
user, err := rsAPI.QueryUserIDForSender(ctx, *validRoomID, spec.SenderID(tuple.StateKey))
|
user, err := rsAPI.QueryUserIDForSender(ctx, *validRoomID, spec.SenderID(tuple.StateKey))
|
||||||
if err != nil || user == nil {
|
if err != nil || user == nil {
|
||||||
continue
|
continue
|
||||||
|
|
|
||||||
|
|
@ -110,15 +110,16 @@ func Relations(
|
||||||
return util.ErrorResponse(err)
|
return util.ErrorResponse(err)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
validRoomID, err := spec.NewRoomID(roomID)
|
||||||
|
if err != nil {
|
||||||
|
return util.ErrorResponse(err)
|
||||||
|
}
|
||||||
|
|
||||||
// Convert the events into client events, and optionally filter based on the event
|
// Convert the events into client events, and optionally filter based on the event
|
||||||
// type if it was specified.
|
// type if it was specified.
|
||||||
res.Chunk = make([]synctypes.ClientEvent, 0, len(filteredEvents))
|
res.Chunk = make([]synctypes.ClientEvent, 0, len(filteredEvents))
|
||||||
for _, event := range filteredEvents {
|
for _, event := range filteredEvents {
|
||||||
sender := spec.UserID{}
|
sender := spec.UserID{}
|
||||||
validRoomID, err := spec.NewRoomID(event.RoomID())
|
|
||||||
if err != nil {
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
userID, err := rsAPI.QueryUserIDForSender(req.Context(), *validRoomID, event.SenderID())
|
userID, err := rsAPI.QueryUserIDForSender(req.Context(), *validRoomID, event.SenderID())
|
||||||
if err == nil && userID != nil {
|
if err == nil && userID != nil {
|
||||||
sender = *userID
|
sender = *userID
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue