diff options
author | kegsay <kegan@matrix.org> | 2023-05-02 15:03:16 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-05-02 15:03:16 +0100 |
commit | f5b3144dc33ddcb2ab161323d422cab257d04b4c (patch) | |
tree | 07d3b03944d2529d96c29674a96c3e76a76ae3b9 /roomserver/internal/helpers/auth.go | |
parent | 696cbb70b8cc8d663f7bb7c7a5f25cd57ea6803e (diff) |
Use PDU not *Event in HeaderedEvent (#3073)
Requires https://github.com/matrix-org/gomatrixserverlib/pull/376
This has numerous upsides:
- Less type casting to `*Event` is required.
- Making Dendrite work with `PDU` interfaces means we can swap out Event
impls more easily.
- Tests which represent weird event shapes are easier to write.
Part of a series of refactors on GMSL.
Diffstat (limited to 'roomserver/internal/helpers/auth.go')
-rw-r--r-- | roomserver/internal/helpers/auth.go | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/roomserver/internal/helpers/auth.go b/roomserver/internal/helpers/auth.go index 48e2e1cf..3d2beab3 100644 --- a/roomserver/internal/helpers/auth.go +++ b/roomserver/internal/helpers/auth.go @@ -66,7 +66,7 @@ func CheckForSoftFail( // Work out which of the state events we actually need. stateNeeded := gomatrixserverlib.StateNeededForAuth( - gomatrixserverlib.ToPDUs([]*gomatrixserverlib.Event{event.Event}), + []gomatrixserverlib.PDU{event.PDU}, ) // Load the actual auth events from the database. @@ -76,7 +76,7 @@ func CheckForSoftFail( } // Check if the event is allowed. - if err = gomatrixserverlib.Allowed(event.Event, &authEvents); err != nil { + if err = gomatrixserverlib.Allowed(event.PDU, &authEvents); err != nil { // return true, nil return true, err } @@ -100,7 +100,7 @@ func CheckAuthEvents( authStateEntries = types.DeduplicateStateEntries(authStateEntries) // Work out which of the state events we actually need. - stateNeeded := gomatrixserverlib.StateNeededForAuth([]gomatrixserverlib.PDU{event.Event}) + stateNeeded := gomatrixserverlib.StateNeededForAuth([]gomatrixserverlib.PDU{event.PDU}) // Load the actual auth events from the database. authEvents, err := loadAuthEvents(ctx, db, roomInfo, stateNeeded, authStateEntries) @@ -109,7 +109,7 @@ func CheckAuthEvents( } // Check if the event is allowed. - if err = gomatrixserverlib.Allowed(event.Event, &authEvents); err != nil { + if err = gomatrixserverlib.Allowed(event.PDU, &authEvents); err != nil { return nil, err } @@ -170,7 +170,7 @@ func (ae *authEvents) lookupEventWithEmptyStateKey(typeNID types.EventTypeNID) g if !ok { return nil } - return event.Event + return event.PDU } func (ae *authEvents) lookupEvent(typeNID types.EventTypeNID, stateKey string) gomatrixserverlib.PDU { @@ -189,7 +189,7 @@ func (ae *authEvents) lookupEvent(typeNID types.EventTypeNID, stateKey string) g if !ok { return nil } - return event.Event + return event.PDU } // loadAuthEvents loads the events needed for authentication from the supplied room state. |