Add ServerKeyAPI lines

This commit is contained in:
Kegan Dougal 2020-06-15 10:10:18 +01:00
parent 0c576bd1a5
commit e80f22345a
5 changed files with 20 additions and 22 deletions

View file

@ -41,7 +41,6 @@ func AddPublicRoutes(
deviceDB devices.Database, deviceDB devices.Database,
accountsDB accounts.Database, accountsDB accounts.Database,
federation *gomatrixserverlib.FederationClient, federation *gomatrixserverlib.FederationClient,
keyRing *gomatrixserverlib.KeyRing,
rsAPI roomserverAPI.RoomserverInternalAPI, rsAPI roomserverAPI.RoomserverInternalAPI,
eduInputAPI eduServerAPI.EDUServerInputAPI, eduInputAPI eduServerAPI.EDUServerInputAPI,
asAPI appserviceAPI.AppServiceQueryAPI, asAPI appserviceAPI.AppServiceQueryAPI,
@ -62,7 +61,7 @@ func AddPublicRoutes(
routing.Setup( routing.Setup(
router, cfg, eduInputAPI, rsAPI, asAPI, router, cfg, eduInputAPI, rsAPI, asAPI,
accountsDB, deviceDB, federation, *keyRing, accountsDB, deviceDB, federation,
syncProducer, transactionsCache, fsAPI, syncProducer, transactionsCache, fsAPI,
) )
} }

View file

@ -32,7 +32,6 @@ type getEventRequest struct {
eventID string eventID string
cfg *config.Dendrite cfg *config.Dendrite
federation *gomatrixserverlib.FederationClient federation *gomatrixserverlib.FederationClient
keyRing gomatrixserverlib.KeyRing
requestedEvent gomatrixserverlib.Event requestedEvent gomatrixserverlib.Event
} }
@ -46,7 +45,6 @@ func GetEvent(
cfg *config.Dendrite, cfg *config.Dendrite,
rsAPI api.RoomserverInternalAPI, rsAPI api.RoomserverInternalAPI,
federation *gomatrixserverlib.FederationClient, federation *gomatrixserverlib.FederationClient,
keyRing gomatrixserverlib.KeyRing,
) util.JSONResponse { ) util.JSONResponse {
eventsReq := api.QueryEventsByIDRequest{ eventsReq := api.QueryEventsByIDRequest{
EventIDs: []string{eventID}, EventIDs: []string{eventID},
@ -75,7 +73,6 @@ func GetEvent(
eventID: eventID, eventID: eventID,
cfg: cfg, cfg: cfg,
federation: federation, federation: federation,
keyRing: keyRing,
requestedEvent: requestedEvent, requestedEvent: requestedEvent,
} }

View file

@ -55,7 +55,6 @@ func Setup(
accountDB accounts.Database, accountDB accounts.Database,
deviceDB devices.Database, deviceDB devices.Database,
federation *gomatrixserverlib.FederationClient, federation *gomatrixserverlib.FederationClient,
keyRing gomatrixserverlib.KeyRing,
syncProducer *producers.SyncAPIProducer, syncProducer *producers.SyncAPIProducer,
transactionsCache *transactions.Cache, transactionsCache *transactions.Cache,
federationSender federationSenderAPI.FederationSenderInternalAPI, federationSender federationSenderAPI.FederationSenderInternalAPI,
@ -154,7 +153,7 @@ func Setup(
if err != nil { if err != nil {
return util.ErrorResponse(err) return util.ErrorResponse(err)
} }
return GetEvent(req, device, vars["roomID"], vars["eventID"], cfg, rsAPI, federation, keyRing) return GetEvent(req, device, vars["roomID"], vars["eventID"], cfg, rsAPI, federation)
}), }),
).Methods(http.MethodGet, http.MethodOptions) ).Methods(http.MethodGet, http.MethodOptions)

View file

@ -10,18 +10,18 @@ Note in Monolith mode these are actually direct function calls and are not seria
``` ```
Tier 1 Sync PublicRooms FederationAPI ClientAPI MediaAPI Tier 1 Sync PublicRooms FederationAPI ClientAPI MediaAPI
Public Facing | .-----1------` | | | | | | | | Public Facing | .-----1------` | | | | | | | | |
2 | .-------3-----------------` | | | | | | | 2 | .-------3-----------------` | | | `--------|-|-|-|--11--------------------.
| | | .--------4----------------------------------` | | | | | | .--------4----------------------------------` | | | |
| | | | .---5-----------` | | | | | | | | | .---5-----------` | | | | | |
| | | | | .---6----------------------------` | | | | | | | .---6----------------------------` | | |
| | | | | | | .-----7----------` | | | | | | | | .-----7----------` | |
| | | | | | 8 | | 10 | | | | | | 8 | | 10 |
| | | | | | | | `---9----. | | | | | | | | | `---9----. | |
V V V V V V V V V V V V V V V V V V V V V
Tier 2 Roomserver EDUServer FedSender AppService KeyServer ServerKeyAPI Tier 2 Roomserver EDUServer FedSender AppService KeyServer ServerKeyAPI
Internal only Internal only | `------------------------12----------^ ^
`------------------------------------------------------------13----------`
Client ---> Server Client ---> Server
``` ```
@ -32,9 +32,12 @@ Internal only
- 5 (FedAPI -> EDUServer): Sending typing/send-to-device events - 5 (FedAPI -> EDUServer): Sending typing/send-to-device events
- 6 (ClientAPI -> EDUServer): Sending typing/send-to-device events - 6 (ClientAPI -> EDUServer): Sending typing/send-to-device events
- 7 (ClientAPI -> FedSender): Handling directory lookups - 7 (ClientAPI -> FedSender): Handling directory lookups
- 8 (FedAPI -> FedSender): Resetting backoffs when receiving traffic from a server. Querying joined hosts when handling alias lookup requests. - 8 (FedAPI -> FedSender): Resetting backoffs when receiving traffic from a server. Querying joined hosts when handling alias lookup requests
- 9 (FedAPI -> AppService): Working out if the client is an appservice user. - 9 (FedAPI -> AppService): Working out if the client is an appservice user
- 10 (ClientAPI -> AppService): Working out if the client is an appservice user. - 10 (ClientAPI -> AppService): Working out if the client is an appservice user
- 11 (FedAPI -> ServerKeyAPI): Verifying incoming event signatures
- 12 (FedSender -> ServerKeyAPI): Verifying event signatures of responses (e.g from send_join)
- 13 (Roomserver -> ServerKeyAPI): Verifying event signatures of backfilled events
## Kafka logs ## Kafka logs

View file

@ -67,7 +67,7 @@ type Monolith struct {
func (m *Monolith) AddAllPublicRoutes(publicMux *mux.Router) { func (m *Monolith) AddAllPublicRoutes(publicMux *mux.Router) {
clientapi.AddPublicRoutes( clientapi.AddPublicRoutes(
publicMux, m.Config, m.KafkaConsumer, m.KafkaProducer, m.DeviceDB, m.AccountDB, publicMux, m.Config, m.KafkaConsumer, m.KafkaProducer, m.DeviceDB, m.AccountDB,
m.FedClient, m.KeyRing, m.RoomserverAPI, m.FedClient, m.RoomserverAPI,
m.EDUInternalAPI, m.AppserviceAPI, transactions.New(), m.EDUInternalAPI, m.AppserviceAPI, transactions.New(),
m.FederationSenderAPI, m.FederationSenderAPI,
) )