mirror of
https://github.com/matrix-org/dendrite.git
synced 2025-12-13 09:53:10 -06:00
Use clear logic and comments
This commit is contained in:
parent
c80d102074
commit
50257a0184
|
|
@ -30,8 +30,8 @@ type getMissingEventRequest struct {
|
||||||
MinDepth int64 `json:"min_depth"`
|
MinDepth int64 `json:"min_depth"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// GetMissingEvents returns missing event between earliest_events & latest_events.
|
// GetMissingEvents returns missing events between earliest_events & latest_events.
|
||||||
// Events are fetched from room DAG starting from latest_events until we reach earliest_events or the limit
|
// Events are fetched from room DAG starting from latest_events until we reach earliest_events or the limit.
|
||||||
func GetMissingEvents(
|
func GetMissingEvents(
|
||||||
httpReq *http.Request,
|
httpReq *http.Request,
|
||||||
request *gomatrixserverlib.FederationRequest,
|
request *gomatrixserverlib.FederationRequest,
|
||||||
|
|
|
||||||
|
|
@ -154,9 +154,9 @@ type QueryServerAllowedToSeeEventResponse struct {
|
||||||
AllowedToSeeEvent bool `json:"can_see_event"`
|
AllowedToSeeEvent bool `json:"can_see_event"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// QueryMissingEventsRequest is request to QueryMissingEvents
|
// QueryMissingEventsRequest is a request to QueryMissingEvents
|
||||||
type QueryMissingEventsRequest struct {
|
type QueryMissingEventsRequest struct {
|
||||||
// Events which are known previous to the gap in timeline.
|
// Events which are known previous to the gap in the timeline.
|
||||||
EarliestEvents []string `json:"earliest_events"`
|
EarliestEvents []string `json:"earliest_events"`
|
||||||
// Latest known events.
|
// Latest known events.
|
||||||
LatestEvents []string `json:"latest_events"`
|
LatestEvents []string `json:"latest_events"`
|
||||||
|
|
@ -166,7 +166,7 @@ type QueryMissingEventsRequest struct {
|
||||||
ServerName gomatrixserverlib.ServerName `json:"server_name"`
|
ServerName gomatrixserverlib.ServerName `json:"server_name"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// QueryMissingEventsResponse is response to QueryMissingEvents
|
// QueryMissingEventsResponse is a response to QueryMissingEvents
|
||||||
type QueryMissingEventsResponse struct {
|
type QueryMissingEventsResponse struct {
|
||||||
// Missing events, arbritrary order.
|
// Missing events, arbritrary order.
|
||||||
Events []gomatrixserverlib.Event `json:"events"`
|
Events []gomatrixserverlib.Event `json:"events"`
|
||||||
|
|
|
||||||
|
|
@ -14,12 +14,13 @@ package auth
|
||||||
|
|
||||||
import "github.com/matrix-org/gomatrixserverlib"
|
import "github.com/matrix-org/gomatrixserverlib"
|
||||||
|
|
||||||
// IsServerAllowed checks if a server has a client as member in authEvents
|
// IsServerAllowed returns true if there exists a event in authEvents
|
||||||
|
// which allows server to view this event. That is true when a client on the server
|
||||||
|
// can view the event. Otherwise returns false.
|
||||||
func IsServerAllowed(
|
func IsServerAllowed(
|
||||||
serverName gomatrixserverlib.ServerName,
|
serverName gomatrixserverlib.ServerName,
|
||||||
authEvents []gomatrixserverlib.Event,
|
authEvents []gomatrixserverlib.Event,
|
||||||
) bool {
|
) bool {
|
||||||
isInRoom := false
|
|
||||||
for _, ev := range authEvents {
|
for _, ev := range authEvents {
|
||||||
membership, err := ev.Membership()
|
membership, err := ev.Membership()
|
||||||
if err != nil || membership != "join" {
|
if err != nil || membership != "join" {
|
||||||
|
|
@ -37,11 +38,10 @@ func IsServerAllowed(
|
||||||
}
|
}
|
||||||
|
|
||||||
if domain == serverName {
|
if domain == serverName {
|
||||||
isInRoom = true
|
return true
|
||||||
break
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: Check if history visibility is shared and if the server is currently in the room
|
// TODO: Check if history visibility is shared and if the server is currently in the room
|
||||||
return isInRoom
|
return false
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue