Create tesla middleware for adding signature to federation requests
Change repo structure
This commit is contained in:
parent
214293323c
commit
be9860f7d0
23 changed files with 83 additions and 58 deletions
|
@ -2,7 +2,7 @@ defmodule MatrixServer.QuickCheck do
|
|||
import Ecto.Query
|
||||
|
||||
alias MatrixServer.{Repo, Room, Account, RoomServer}
|
||||
alias MatrixServerWeb.Request.CreateRoom
|
||||
alias MatrixServerWeb.Client.Request.CreateRoom
|
||||
|
||||
def create_room(name \\ nil, topic \\ nil) do
|
||||
account = Repo.one!(from a in Account, limit: 1)
|
||||
|
|
|
@ -5,8 +5,8 @@ defmodule MatrixServer.RoomServer do
|
|||
import Ecto.Changeset
|
||||
|
||||
alias MatrixServer.{Repo, Room, Event, StateResolution}
|
||||
alias MatrixServerWeb.Request.CreateRoom
|
||||
alias MatrixServer.StateResolution.Authorization
|
||||
alias MatrixServerWeb.Client.Request.CreateRoom
|
||||
|
||||
@registry MatrixServer.RoomServer.Registry
|
||||
@supervisor MatrixServer.RoomServer.Supervisor
|
||||
|
|
|
@ -4,7 +4,7 @@ defmodule MatrixServer.Account do
|
|||
import Ecto.{Changeset, Query}
|
||||
|
||||
alias MatrixServer.{Repo, Account, Device}
|
||||
alias MatrixServerWeb.Request.{Register, Login}
|
||||
alias MatrixServerWeb.Client.Request.{Register, Login}
|
||||
alias Ecto.Multi
|
||||
|
||||
@max_mxid_length 255
|
||||
|
|
|
@ -4,7 +4,7 @@ defmodule MatrixServer.Device do
|
|||
import Ecto.{Changeset, Query}
|
||||
|
||||
alias MatrixServer.{Account, Device, Repo}
|
||||
alias MatrixServerWeb.Request.Login
|
||||
alias MatrixServerWeb.Client.Request.Login
|
||||
|
||||
@primary_key false
|
||||
schema "devices" do
|
||||
|
|
|
@ -5,7 +5,7 @@ defmodule MatrixServer.Room do
|
|||
import Ecto.Query
|
||||
|
||||
alias MatrixServer.{Repo, Room, Event, Alias, RoomServer}
|
||||
alias MatrixServerWeb.Request.CreateRoom
|
||||
alias MatrixServerWeb.Client.Request.CreateRoom
|
||||
|
||||
@primary_key {:id, :string, []}
|
||||
schema "rooms" do
|
||||
|
|
|
@ -4,7 +4,7 @@ defmodule MatrixServer.ServerKeyInfo do
|
|||
import Ecto.Query
|
||||
|
||||
alias MatrixServer.{Repo, ServerKeyInfo, SigningKey}
|
||||
alias MatrixServerWeb.FederationClient
|
||||
alias MatrixServerWeb.Federation.HTTPClient
|
||||
alias MatrixServerWeb.Federation.Request.GetSigningKeys
|
||||
alias Ecto.Multi
|
||||
|
||||
|
@ -35,7 +35,7 @@ defmodule MatrixServer.ServerKeyInfo do
|
|||
defp refresh_signing_keys(server_name) do
|
||||
# TODO: Handle expired keys.
|
||||
in_a_week = System.os_time(:millisecond) + 1000 * 60 * 60 * 24 * 7
|
||||
client = FederationClient.client(server_name)
|
||||
client = HTTPClient.client(server_name)
|
||||
|
||||
with {:ok,
|
||||
%GetSigningKeys{
|
||||
|
@ -43,7 +43,7 @@ defmodule MatrixServer.ServerKeyInfo do
|
|||
verify_keys: verify_keys,
|
||||
valid_until_ts: valid_until
|
||||
}} <-
|
||||
FederationClient.get_signing_keys(client) do
|
||||
HTTPClient.get_signing_keys(client) do
|
||||
signing_keys =
|
||||
Enum.map(verify_keys, fn {key_id, %{"key" => key}} ->
|
||||
[server_name: server_name, signing_key_id: key_id, signing_key: key]
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue