Fix statekey usage in roomserver/input_events

This commit is contained in:
Devon Hudson 2023-06-08 14:10:51 -06:00
parent f6b6f5e8db
commit 5e9b7d714f
No known key found for this signature in database
GPG key ID: CD06B18E77F6A628

View file

@ -842,17 +842,15 @@ func (r *Inputer) kickGuests(ctx context.Context, event gomatrixserverlib.PDU, r
continue continue
} }
// TODO: pseudoIDs: get userID for room using state key (which is now senderID) memberUserID, err := r.Queryer.QueryUserIDForSender(ctx, memberEvent.RoomID(), spec.SenderID(*memberEvent.StateKey()))
localpart, senderDomain, err := gomatrixserverlib.SplitID('@', *memberEvent.StateKey())
if err != nil { if err != nil {
continue continue
} }
// TODO: pseudoIDs: query account by state key (which is now senderID)
accountRes := &userAPI.QueryAccountByLocalpartResponse{} accountRes := &userAPI.QueryAccountByLocalpartResponse{}
if err = r.UserAPI.QueryAccountByLocalpart(ctx, &userAPI.QueryAccountByLocalpartRequest{ if err = r.UserAPI.QueryAccountByLocalpart(ctx, &userAPI.QueryAccountByLocalpartRequest{
Localpart: localpart, Localpart: memberUserID.Local(),
ServerName: senderDomain, ServerName: memberUserID.Domain(),
}, accountRes); err != nil { }, accountRes); err != nil {
return err return err
} }
@ -896,8 +894,8 @@ func (r *Inputer) kickGuests(ctx context.Context, event gomatrixserverlib.PDU, r
inputEvents = append(inputEvents, api.InputRoomEvent{ inputEvents = append(inputEvents, api.InputRoomEvent{
Kind: api.KindNew, Kind: api.KindNew,
Event: event, Event: event,
Origin: senderDomain, Origin: memberUserID.Domain(),
SendAsServer: string(senderDomain), SendAsServer: string(memberUserID.Domain()),
}) })
prevEvents = []string{event.EventID()} prevEvents = []string{event.EventID()}
} }