Age | Commit message (Collapse) | Author |
|
* Implement /_synapse/admin/v1/register
This is implemented identically to Synapse, so scripts which work
with Synapse should work with Dendrite.
```
Test 27 POST /_synapse/admin/v1/register with shared secret... OK
Test 28 POST /_synapse/admin/v1/register admin with shared secret... OK
Test 29 POST /_synapse/admin/v1/register with shared secret downcases capitals... OK
Test 30 POST /_synapse/admin/v1/register with shared secret disallows symbols... OK
```
Sytest however has `implementation_specific => "synapse"` which stops these
tests from running.
* Add missing muxes to gobind
* Linting
|
|
* dendrite-upgrade-test: tweaks to get it to run under CI in docker
* Linting
|
|
|
|
|
|
|
|
* Add WIP binary for testing dendrite version upgrades
* WIP dendrite upgrade work
* Finish dendrite upgrade checks
* go mod tidy
* Review comments; print container logs on failure
* Linting
|
|
* Change how servers are selected for missing auth/prev events
* Shuffle order
* Move ServersInRoomProvider into api package
|
|
|
|
|
|
|
|
* Add parameters to specify password
Signed-off-by: Till Faelligen <tfaelligen@gmail.com>
* Fix typo
* Add testdata
* Use go1.13 compatible way to read files
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Pinecone demo
* Enable multicast, fix HTTP routing
* Fix multicast import
* Fix build
* Update Pinecone demo
* Fix the keys
* Tweaks
* Pinecone room directory support (early)
* Fix gobind-pinecone
* Add pinecone listener
* Fix public key value
* Use AuthenticatedConnect for dial
* Fix gobind-pinecone
* Stop panics
* Give fsAPI to keyserver
* Pinecone demo fixes
* Update gobind build scripts
* Account creation
* Tweaks
* Setup tweaks
* API tweaks
* API tweaks
* API tweaks
* Port mutex
* Re-enable multicast
* Add ReadCopy
* Update quic-go, fixes
* Shutdowns fixed for iOS
* Update build script
* Add WebSocket support
* Bug fixes
* Netconn context
* Fix WebSocket connectivity
* Fixes to gobind API
* Strip frameworks
* Configurability updates
* Update go.mod
* Update go.mod/go.sum
* Update go.mod/go.sum
* Update go.mod/go.sum
* Try to stay connected tto static peer
* Update gobind-pinecone
* Update go.mod/go.sum
* Test uTP+TLS
* Use HTTP/2
* Don't use HTTP/2
* Update go.mod/go.sum
* Attempt to reconnect to the static peer if it drops
* Stay connected to static peers more stickily
* Retry room directory lookups if they fail
* NewQUIC -> NewSessions
* Storage updates
* Don't return immediately when there's nothing to sync
* Updates
* Try to reconnect to static peer more
* Update go.mod/go.sum
* Require Go 1.14
* Update go.mod/go.sum
* Update go.mod/go.sum
|
|
* Implement OpenID module (#599)
- Unrelated: change Riot references to Element in client API routing
Signed-off-by: Bruce MacDonald <contact@bruce-macdonald.com>
* OpenID module tweaks (#599)
- specify expiry is ms rather than vague ts
- add OpenID token lifetime to configuration
- use Go naming conventions for the path params
- store plaintext token rather than hash
- remove openid table sqllite mutex
* Add default OpenID token lifetime (#599)
* Update dendrite-config.yaml
Co-authored-by: Kegsay <kegsay@gmail.com>
Co-authored-by: Kegsay <kegan@matrix.org>
|
|
|
|
* Tweak AS registration check
* Check appservice usernames using correct function
* Update sytest-whitelist
* Use gomatrixserverlib.Client since that allows us to disable TLS validation using the config
* Add appservice-specific client and ability to control TLS validation for appservices only
* Set timeout on appservice client
* Review comments
* Remove dead code
* Enforce LoginTypeApplicationService after all
* Check correct auth type field
|
|
related to it) (#1783)
|
|
* Look up servers less often, don't hit API for missing auth events unless there are actually missing auth events
* Remove ResolveConflictsAdhoc (since it is already in GMSL), other tweaks
* Update gomatrixserverlib to matrix-org/gomatrixserverlib#254
* Fix resolve-state
* Initialise t.servers on first use
|
|
* Initial graceful stop
* Fix dendritejs
* Use process context for outbound federation requests in destination queues
* Reduce logging
* Fix log level
|
|
* Use matrix-org/gomatrixserverlib#252
* Add missing WithSkipVerify to test
* Functions instead
* Update gomatrixserverlib to matrix-org/gomatrixserverlib#252
* Fix disabling TLS validation
|
|
|
|
|
|
|
|
|
|
|
|
* Update GMSL
* Add MSC2836EventRelationships to fedsender
* Call MSC2836EventRelationships in reqCtx
* auth remote servers
* Extract room ID and servers from previous events; refactor a bit
* initial cut of federated threading
* Use the right client/fed struct in the response
* Add QueryAuthChain for use with MSC2836
* Add auth chain to federated response
* Fix pointers
* under CI: more logging and enable mscs, nil fix
* Handle direction: up
* Actually send message events to the roomserver..
* Add children and children_hash to unsigned, with tests
* Add logic for exploring threads and tracking children; missing storage functions
* Implement storage functions for children
* Add fetchUnknownEvent
* Do federated hits for include_children if we have unexplored children
* Use /ev_rel rather than /event as the former includes child metadata
* Remove cross-room threading impl
* Enable MSC2836 in the p2p demo
* Namespace mscs db
* Enable msc2836 for ygg
Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com>
|
|
|
|
* Move config, setup, mscs into "setup" top-level folder
* oops, forgot the EDU server
* Add setup
* goimports
|
|
|
|
* Add mscs/hooks package, begin work for msc2836
* Flesh out hooks and add SQL schema
* Begin implementing core msc2836 logic
* Add test harness
* Linting
* Implement visibility checks; stub out APIs for tests
* Flesh out testing
* Flesh out walkThread a bit
* Persist the origin_server_ts as well
* Edges table instead of relationships
* Add nodes table for event metadata
* LEFT JOIN to extract origin_server_ts for children
* Add graph walking structs
* Implement walking algorithm
* Add more graph walking tests
* Add auto_join for local rooms
* Fix create table syntax on postgres
* Add relationship_room_id|servers to the unsigned section of events
* Persist the parent room_id/servers in edge metadata
Other events cannot assert the true room_id/servers for the
parent event, only make claims to them, hence why this is
edge metadata.
* guts to pass through room_id/servers
* Refactor msc2836 to allow handling from federation
* Add JoinedVia to PerformJoin responses
* Fix tests; review comments
|
|
* Pass events as pointers
* Fix lint errors
* Update gomatrixserverlib
* Update gomatrixserverlib
* Update to matrix-org/gomatrixserverlib#240
|
|
* Add resolve-state helper
* Tweaks
* Refactor forward extremities, again
* Tweaks
* Minor optimisation
* Make path a bit clearer
* Only process state/membership if forward extremities have changed
* Usage comments in resolve-state
|
|
* Initial work oon multipersonality binary
* Remove old binaries
* Monolith and polylith binaries
* Better logging
* dendrite-poly-multi
* Fix path
* Copyright notices etc
* Tweaks
* Update Docker, INSTALL.md
* Take first argument if flags package doesn't find any args
* Postgres 9.6 or later, fix some more Docker stuff
* Don't create unnecessary e2ekey DB
* Run go mod tidy
|
|
|
|
* Support auto-upgrading accounts DB
* Auto-upgrade device DB deltas
* Support up/downgrading from cmd/goose
* Linting
* Create tables then do migrations then prepare statements
To avoid failing due to some things not existing
* Linting
|
|
* Start Kafka connection for each component that needs one
* Fix roomserver unit tests
* Rename to naffkaInstance (@Kegsay review comment)
* Fix import cycle
|
|
* Update to matrix-org/gomatrixserverlib#234
* Update gomatrixserverlib
* Update federation timeouts
* Fix dendritejs
* Increase /send context time in destination queue
|
|
* Add last_used_ts and IP to database
* Add migrations
* Rename column
Prepare statements
* Add interface method and implement it
Signed-off-by: Till Faelligen <tfaelligen@gmail.com>
* Rename struct fields
* Add user_agent to database
* Add userAgent to registration calls
* Add missing "IF NOT EXISTS"
* use txn writer
* Add UserAgent to Device
Co-authored-by: Kegsay <kegan@matrix.org>
|
|
* Update monolith -api mode listeners
* Fix check
* Fix another check
* Update HTTP API addr behaviour
* Redefine NoExternalListener
* NoListener
|
|
* Rename serverkeyapi to signingkeyserver
We use "api" for public facing stuff and "server" for internal stuff.
As the server key API is internal only, we call it 'signing key server',
which also clarifies the type of key (as opposed to TLS keys, E2E keys, etc)
* Convert docker/scripts to use signing-key-server
* Rename missed bits
|
|
* Don't give up if we fail to fetch a key
* Fix logging line
* furl nolint
|
|
* Add furl
* Add POST support
|
|
|