mirror of
https://github.com/hoernschen/dendrite.git
synced 2025-08-01 13:52:46 +00:00
Update gmsl to use new validated RoomID on PDUs (#3200)
GMSL returns a `spec.RoomID` when calling `PDU.RoomID()`
This commit is contained in:
parent
058081e68e
commit
8245b24100
64 changed files with 241 additions and 413 deletions
|
@ -109,7 +109,7 @@ func Backfill(
|
|||
|
||||
var ev *types.HeaderedEvent
|
||||
for _, ev = range res.Events {
|
||||
if ev.RoomID() == roomID {
|
||||
if ev.RoomID().String() == roomID {
|
||||
evs = append(evs, ev.PDU)
|
||||
}
|
||||
}
|
||||
|
|
|
@ -42,10 +42,10 @@ func GetEventAuth(
|
|||
return *resErr
|
||||
}
|
||||
|
||||
if event.RoomID() != roomID {
|
||||
if event.RoomID().String() != roomID {
|
||||
return util.JSONResponse{Code: http.StatusNotFound, JSON: spec.NotFound("event does not belong to this room")}
|
||||
}
|
||||
resErr = allowedToSeeEvent(ctx, request.Origin(), rsAPI, eventID, event.RoomID())
|
||||
resErr = allowedToSeeEvent(ctx, request.Origin(), rsAPI, eventID, event.RoomID().String())
|
||||
if resErr != nil {
|
||||
return *resErr
|
||||
}
|
||||
|
|
|
@ -42,7 +42,7 @@ func GetEvent(
|
|||
return *err
|
||||
}
|
||||
|
||||
err = allowedToSeeEvent(ctx, request.Origin(), rsAPI, eventID, event.RoomID())
|
||||
err = allowedToSeeEvent(ctx, request.Origin(), rsAPI, eventID, event.RoomID().String())
|
||||
if err != nil {
|
||||
return *err
|
||||
}
|
||||
|
|
|
@ -211,7 +211,7 @@ func SendLeave(
|
|||
}
|
||||
|
||||
// Check that the room ID is correct.
|
||||
if event.RoomID() != roomID {
|
||||
if event.RoomID().String() != roomID {
|
||||
return util.JSONResponse{
|
||||
Code: http.StatusBadRequest,
|
||||
JSON: spec.BadJSON("The room ID in the request path must match the room ID in the leave event JSON"),
|
||||
|
@ -242,14 +242,7 @@ func SendLeave(
|
|||
// Check that the sender belongs to the server that is sending us
|
||||
// the request. By this point we've already asserted that the sender
|
||||
// and the state key are equal so we don't need to check both.
|
||||
validRoomID, err := spec.NewRoomID(event.RoomID())
|
||||
if err != nil {
|
||||
return util.JSONResponse{
|
||||
Code: http.StatusBadRequest,
|
||||
JSON: spec.BadJSON("Room ID is invalid."),
|
||||
}
|
||||
}
|
||||
sender, err := rsAPI.QueryUserIDForSender(httpReq.Context(), *validRoomID, event.SenderID())
|
||||
sender, err := rsAPI.QueryUserIDForSender(httpReq.Context(), event.RoomID(), event.SenderID())
|
||||
if err != nil {
|
||||
return util.JSONResponse{
|
||||
Code: http.StatusForbidden,
|
||||
|
|
|
@ -87,7 +87,7 @@ func filterEvents(
|
|||
) []*types.HeaderedEvent {
|
||||
ref := events[:0]
|
||||
for _, ev := range events {
|
||||
if ev.RoomID() == roomID {
|
||||
if ev.RoomID().String() == roomID {
|
||||
ref = append(ref, ev)
|
||||
}
|
||||
}
|
||||
|
|
|
@ -113,10 +113,10 @@ func getState(
|
|||
return nil, nil, resErr
|
||||
}
|
||||
|
||||
if event.RoomID() != roomID {
|
||||
if event.RoomID().String() != roomID {
|
||||
return nil, nil, &util.JSONResponse{Code: http.StatusNotFound, JSON: spec.NotFound("event does not belong to this room")}
|
||||
}
|
||||
resErr = allowedToSeeEvent(ctx, request.Origin(), rsAPI, eventID, event.RoomID())
|
||||
resErr = allowedToSeeEvent(ctx, request.Origin(), rsAPI, eventID, event.RoomID().String())
|
||||
if resErr != nil {
|
||||
return nil, nil, resErr
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue