| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| | |
Make a full SQL schema
|
| | |
|
| | |
|
| | |
|
| | |
|
| |\ |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
identity server (#5377)
Sends password reset emails from the homeserver instead of proxying to the identity server. This is now the default behaviour for security reasons. If you wish to continue proxying password reset requests to the identity server you must now enable the email.trust_identity_server_for_password_resets option.
This PR is a culmination of 3 smaller PRs which have each been separately reviewed:
* #5308
* #5345
* #5368
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
There are a few changes going on here:
* We make checking the signature on a key server response optional: if no
verify_keys are specified, we trust to TLS to validate the connection.
* We change the default config so that it does not require responses to be
signed by the old key.
* We replace the old 'perspectives' config with 'trusted_key_servers', which
is also formatted slightly differently.
* We emit a warning to the logs every time we trust a key server response
signed by the old key.
|
| | |
| | |
| | |
| | | |
Fixes some warnings, and a scary-looking stacktrace when sytest kills the
process.
|
|\ \ \
| | | |
| | | | |
Fix get_max_topological_token to never return None
|
| | | | |
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | | |
Make /sync return heroes if room name or canonical alias are empty
|
| | | | | |
|
| | | | | |
|
| |\ \ \ \ |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
I probably should've just run autopep8 in the first place...
Signed-off-by: Katie Wolfe <katie@dnaf.moe>
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Signed-off-by: Katie Wolfe <katie@dnaf.moe>
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Fixes #4194
Signed-off-by: Katie Wolfe <katie@dnaf.moe>
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Fixes #4194
Signed-off-by: Katie Wolfe <katie@dnaf.moe>
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | | |
Validate federation server TLS certificates by default.
|
| |\ \ \ \ \ \ |
|
| | | | | | | | |
|
|\ \ \ \ \ \ \ \
| | | | | | | | |
| | | | | | | | | |
Include left members in room summaries' heroes
|
| | |_|_|/ / / /
| |/| | | | | |
| | | | | | | |
| | | | | | | | |
the joined members or the parted ones
|
|\ \ \ \ \ \ \ \
| | | | | | | | |
| | | | | | | | | |
Implement room v5 which enforces signing key validity
|
| | |/ / / / / /
| |/| | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Implements [MSC2077](https://github.com/matrix-org/matrix-doc/pull/2077) and
fixes #5247 and #4364.
|
|\ \ \ \ \ \ \ \
| |_|_|/ / / / /
|/| | | | | | | |
Associate a request_name with each verify request, for logging
|
| |/ / / / / /
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Also:
* rename VerifyKeyRequest->VerifyJsonRequest
* calculate key_ids on VerifyJsonRequest construction
* refactor things to pass around VerifyJsonRequests instead of 4-tuples
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Previously, setting this option would cause an exception at startup.
|
| | | | | | |
| | | | | | |
| | | | | | | |
* Update _matrix/client/versions to reference support for r0.5.0
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
* Fix background updates to handle redactions/rejections
In background updates based on current state delta stream we need to
handle that we may not have all the events (or at least that
`get_events` may raise an exception).
|
|\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | | |
Fix handling of failures when calling /event_auth.
|
| | | | | | | | |
|
| | |_|_|_|/ /
| |/| | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
When processing an incoming event over federation, we may try and
resolve any unexpected differences in auth events. This is a
non-essential process and so should not stop the processing of the event
if it fails (e.g. due to the remote disappearing or not implementing the
necessary endpoints).
Fixes #3330
|
| |/ / / / /
|/| | | | |
| | | | | |
| | | | | | |
Improve documentation of monthly active user blocking and mau_trial_days
|
| |/ / / /
|/| | | | |
|
| | | | |
| | | | |
| | | | | |
Remove some spurious stuff, clarify some other stuff
|
| | | | |
| | | | |
| | | | | |
it's a bit confusing
|
| | | | |
| | | | |
| | | | | |
Fixes a regression introduced in #5335.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
FederationClient.get_pdu is called in a loop to fetch a batch of PDUs. A
failure to fetch one should not result in a failure of the whole batch. Add the
missing `continue`.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
We have too many things called get_event, and it's hard to figure out what we
mean. Also remove some unused params from the signature, and add some logging.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Make account validity renewal emails work when email notifs are disabled
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | | |
Ignore room state with null bytes in for room stats
|
| | | | | | | |
|
| | |_|_|_|/
| |/| | | | |
|
|\ \ \ \ \ \ |
|
| | | | | | | |
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
It takes at least 20 minutes to work through the long_retries schedule (11
attempts, each with a 60 second timeout, and 60 seconds between each request),
so if the notary server isn't returning within the timeout, we'll just end up
blocking whatever request is happening for 20 minutes.
Ain't nobody got time for that.
|
|\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
matrix-org/rav/server_keys/09_improve_notary_server
Fixes for the key-notary server
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
... else we're guaranteed to time out.
|
| | | | | | | | |
|
| |/ / / / / / |
|
| | | | | | | |
|
|/ / / / / / |
|
|/ / / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
When handling incoming federation requests, make sure that we have an
up-to-date copy of the signing key.
We do not yet enforce the validity period for event signatures.
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
matrix-org/rav/server_keys/07-fix-notary-cache-poison
Stop overwriting server keys with other keys
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Fix a bug where we would discard a key result which the origin server is no
longer returning. Fixes #5305.
|
| |_|/ / /
|/| | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Limit displaynames and avatar URLs
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
These end up in join events everywhere, so let's limit them.
Fixes #5079
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | | |
Rewrite get_server_verify_keys, again.
|
| |\ \ \ \ \ \
| | | |/ / / /
| | |/| | | |
| | | | | | | |
rav/server_keys/05-rewrite-gsvk-again
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Attempt to simplify the logic in get_server_verify_keys by splitting it into
two methods.
|
|\ \ \ \ \ \ \
| |_|/ / / / /
|/| | | | | | |
Allow configuring a range for the account validity startup job
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | | |
|
| | |_|/ / /
| |/| | | |
| | | | | |
| | | | | |
| | | | | | |
When enabling the account validity feature, Synapse will look at startup for registered account without an expiration date, and will set one equals to 'now + validity_period' for them. On large servers, it can mean that a large number of users will have the same expiration date, which means that they will all be sent a renewal email at the same time, which isn't ideal.
In order to mitigate this, this PR allows server admins to define a 'max_delta' so that the expiration date is a random value in the [now + validity_period ; now + validity_period + max_delta] range. This allows renewal emails to be progressively sent over a configured period instead of being sent all in one big batch.
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
matrix-org/rav/server_keys/06-fix-serverkeys-handling
Remove some pointless exception handling
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
The verify_request deferred already returns a suitable SynapseError, so I don't
really know what we expect to achieve by doing more wrapping, other than log
spam.
Fixes #4278.
|
|\| | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
matrix-org/rav/server_keys/04-use-attrs-for_verify-request
use attr.s for VerifyKeyRequest
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
because namedtuple is awful
|
|\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | | |
Fix ignored filter field in `/messages` endpoint
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
This fixes a bug which were causing the "event_format" field to be
ignored in the filter of requests to the `/messages` endpoint of the
CS API.
Signed-off-by: Eisha Chen-yen-su <chenyensu0@gmail.com>
|
|\ \ \ \ \ \ \ \
| |_|_|_|/ / / /
|/| | | | | | | |
Speed up room stats background update
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
We have to do this by re-inserting a background update and recreating
tables, as the tables only get created during a background update and
will later be deleted.
We also make sure that we remove any entries that should have been
removed but weren't due to a race that has been fixed in a previous
commit.
|
| | | | | | | | |
|
| | | | | | | | |
|
| | | | | | | | |
|
| | | | | | | | |
|
|\ \ \ \ \ \ \ \
| |_|/ / / / / /
|/| | | | | | | |
|
| | | | | | | | |
|
| | | | | | | | |
|
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Co-Authored-By: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
|
| | | | | | | | |
|
| | | | | | | | |
|
| | | | | | | | |
|
| | | | | | | | |
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Due to #5269 we may have extremities in our DB that we shouldn't have,
so lets add a cleanup task such to remove those.
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
When we receive a soft failed event we, correctly, *do not* update the
forward extremity table with the event. However, if we later receive an
event that references the soft failed event we then need to remove the
soft failed events prev events from the forward extremities table,
otherwise we just build up forward extremities.
Fixes #5269
|
| |/ / / / / /
|/| | | | | | |
|
|\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | | |
Add DB bg update to cleanup extremities.
|
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Co-Authored-By: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
|
| | | | | | | | |
|
| | | | | | | | |
|
| | | | | | | | |
|
| | | | | | | | |
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Due to #5269 we may have extremities in our DB that we shouldn't have,
so lets add a cleanup task such to remove those.
|
|\ \ \ \ \ \ \ \
| | | | | | | | |
| | | | | | | | | |
Show correct error when logging out and access token is missing
|
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
Signed-off-by: Aaron Raimist <aaron@raim.ist>
|
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
Signed-off-by: Aaron Raimist <aaron@raim.ist>
|
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
Signed-off-by: Aaron Raimist <aaron@raim.ist>
|
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
This is just unhelpful spam
|
| | | | | | | | | |
|
| | | | | | | | | |
|
| | | | | | | | | |
|
| |/ / / / / / /
|/| | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Fix error when downloading thumbnail with width/height param missing
Fixes #2748
Signed-off-by: Aaron Raimist <aaron@raim.ist>
|
| |_|/ / / / /
|/| | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
When we receive a soft failed event we, correctly, *do not* update the
forward extremity table with the event. However, if we later receive an
event that references the soft failed event we then need to remove the
soft failed events prev events from the forward extremities table,
otherwise we just build up forward extremities.
Fixes #5269
|
| | | | | | |
| | | | | | |
| | | | | | | |
Fixes #5271.
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Signed-off-by: Aaron Raimist <aaron@raim.ist>
|
|\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | | |
Ensure that server_keys fetched via a notary server are correctly signed.
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
In particular, don't give up on the first failure.
|
| | | | | | | | |
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Fixes #4414.
|
|\ \ \ \ \ \ \ \
| | |_|_|/ / / /
| |/| | | | | | |
Fix schema update for account validity
|
| | | | | | | | |
|
|\ \ \ \ \ \ \ \
| | | | | | | | |
| | | | | | | | | |
Fix logging for room stats background update
|
| | | | | | | | | |
|
|\ \ \ \ \ \ \ \ \
| | | | | | | | | |
| | | | | | | | | | |
Fix error code for invalid parameter
|
| | |_|_|/ / / / /
| |/| | | | | | |
| | | | | | | | |
| | | | | | | | | |
Signed-off-by: Aaron Raimist <aaron@raim.ist>
|
|/ / / / / / / /
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
The list of server names was redundant, since it was equivalent to the keys on
the server_to_deferred map. This reduces the number of large lists being passed
around, and has the benefit of deduplicating the entries in `wait_on`.
|
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Signed-off-by: Tulir Asokan <tulir@maunium.net>
|
| | | | | | | | |
|
|\ \ \ \ \ \ \ \
| |/ / / / / / /
|/| | | | | | | |
Don't bundle aggregations with events in /sync or /events or state queries
|
| | | | | | | | |
|
| | |_|_|_|_|/
| |/| | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
As we'll send down the annotations too anyway, so this just ends up
confusing clients.
|
|\ \ \ \ \ \ \
| | |_|/ / / /
| |/| | | | | |
Factor out KeyFetchers from KeyRing
|
| | | | | | | |
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Rather than have three methods which have to have the same interface,
factor out a separate interface which is provided by three implementations.
I find it easier to grok the code this way.
|
|/ / / / / /
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Replaces DEFAULT_ROOM_VERSION constant with a method that first checks the config, then returns a hardcoded value if the option is not present.
That hardcoded value is now located in the server.py config file.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This is a first step to checking that the key is valid at the required moment.
The idea here is that, rather than passing VerifyKey objects in and out of the
storage layer, we instead pass FetchKeyResult objects, which simply wrap the
VerifyKey and add a valid_until_ts field.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
* Pass time_added_ms into process_v2_response
* Simplify process_v2_response
We can merge old_verify_keys into verify_keys, and reduce the number of dicts
flying around.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
These were never used, and poking arbitary data into objects from other
packages seems confusing at best.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Storing server keys hammered the database a bit. This replaces the
implementation which stored a single key, with one which can do many updates at
once.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
I was staring at this function trying to figure out wtf it was actually
doing. This is (hopefully) a non-functional refactor which makes it a bit
clearer.
|
| | | | | | |
|
|\ \ \ \ \ \
| | |_|/ / /
| |/| | | | |
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This reverts commit c31e375ade1b59a7fe38628337e9e1aa3de91feb.
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
requests 2.22.0 as been released supporting urllib3 1.25.2
Signed-off-by: Marcus Hoffmann <bubu@bubu1.eu>
|
|\| | | | | |
|
| | |_|/ /
| |/| | | |
|
| | | | |
| | | | |
| | | | | |
* expose SlavedProfileStore to ClientReaderSlavedStore
|
|\| | | | |
|
| |\ \ \ \ |
|
| | | | | | |
|
| |/ / / /
|/| | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Only count aggregations from distinct senders
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
As a user isn't allowed to send a single emoji more than once.
|
|\ \ \ \ \ \
| |_|/ / / /
|/| | | | | |
Block attempts to annotate the same event twice
|
| | | | | | |
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | | |
Implements https://github.com/matrix-org/matrix-doc/pull/2002.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
When considering the candidates to be forward-extremities, we must exclude soft
failures.
Hopefully fixes #5090.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
* Pin eliot to <1.8 on python 3.5.2
Fixes https://github.com/matrix-org/synapse/issues/5199
* Add support for 'markers' to python_dependencies
* tell xargs not to strip quotes
|
|\ \ \ \ \ \
| |_|_|/ / /
|/| | | / /
| | |_|/ /
| |/| | | |
matrix-org/babolivier/account_validity_expiration_date
Add startup background job for account validity
|
| | | | | |
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | | |
If account validity is enabled in the server's configuration, this job will run at startup as a background job and will stick an expiration date to any registered account missing one.
|
| |/ / /
|/| | |
| | | |
| | | |
| | | |
| | | |
| | | | |
If we remove support for a particular room version, we should behave more
gracefully. This should make client requests fail with a 400 rather than a 500,
and will ignore individiual PDUs in a federation transaction, rather than the
whole transaction.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This reverts commit ce5bcefc609db40740c692bd53a1ef84ab675e8c.
This caused:
```
Traceback (most recent call last):
File "/usr/local/lib/python3.7/runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "/usr/local/lib/python3.7/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/home/synapse/src/synapse/app/client_reader.py", line 32, in <module>
from synapse.replication.slave.storage import SlavedProfileStore
ImportError: cannot import name 'SlavedProfileStore' from 'synapse.replication.slave.storage' (/home/synapse/src/synapse/replication/slave/storage/__init__.py)
error starting synapse.app.client_reader('/home/synapse/config/workers/client_reader.yaml') (exit code: 1); see above for logs
```
|
| | | |
| | | |
| | | | |
Implements MSC1884
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | | |
Land basic reaction and edit support.
|
| | |/ /
| |/| | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | |
| | | |
| | | | |
* fix mapping of return values for get_or_register_3pid_guest
|
|\ \ \ \
| | | | |
| | | | | |
Make generating SQL bounds for pagination generic
|
| | | | | |
|
| |/ / / |
|
| | | |
| | | |
| | | |
| | | |
| | | | |
This will allow us to reuse the same structure when we paginate e.g.
relations
|
| | | |
| | | |
| | | | |
* expose SlavedProfileStore to ClientReaderSlavedStore
|
|\ \ \ \
| | |/ /
| |/| | |
Add an option to disable per-room profiles
|
| | | | |
|
| | | | |
|
|\ \ \ \
| |/ / /
|/| | | |
Re-order registration stages to do msisdn & email auth last
|
| |\ \ \
| | | | |
| | | | |
| | | | | |
dbkr/add_dummy_flow_to_recaptcha_only
|
| |\ \ \ \
| | | | | |
| | | | | |
| | | | | | |
dbkr/add_dummy_flow_to_recaptcha_only
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
It's more natural for the user if the bit that takes them away
from the registration flow comes last. Adding the dummy stage allows
us to do the stages in this order without the ambiguity.
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This allows the client to complete the email last which is more
natual for the user. Without this stage, if the client would
complete the recaptcha (and terms, if enabled) stages and then the
registration request would complete because you've now completed a
flow, even if you were intending to complete the flow that's the
same except has email auth at the end.
Adding a dummy auth stage to the recaptcha-only flow means it's
always unambiguous which flow the client was trying to complete.
Longer term we should think about changing the protocol so the
client explicitly says which flow it's trying to complete.
vector-im/riot-web#9586
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
users (#3484)
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
matrix-org/dbkr/only_check_threepid_not_in_use_if_actually_registering
Only check 3pids not in use when registering
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
We checked that 3pids were not already in use before we checked if
we were going to return the account previously registered in the
same UI auth session, in which case the 3pids will definitely
be in use.
https://github.com/vector-im/riot-web/issues/9586
|
| | | | | | | |
|
| | | | | | | |
|
|\ \ \ \ \ \ \
| |_|_|_|_|/ /
|/| | | | | | |
|
| | | | | | | |
|
|\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | | |
Allow client event serialization to be async
|
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Co-Authored-By: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
|
| | | | | | | | |
|
| | |/ / / / /
| |/| | | | | |
|
|\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | | |
Expose DataStore._get_events as get_events_as_list
|
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Co-Authored-By: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
|
| |/ / / / / /
| | | | | | |
| | | | | | |
| | | | | | | |
This is in preparation for reaction work which requires it.
|
|/ / / / / / |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
items off HomeserverConfig (#5171)
|
|/ / / / / |
|
| |_|/ /
|/| | | |
|
| |/ /
|/| | |
|
|/ /
| |
| | |
Prevents a SynapseError being raised inside of a IResolutionReceiver and instead opts to just return 0 results. This thus means that we have to lump a failed lookup and a blacklisted lookup together with the same error message, but the substitute should be generic enough to cover both cases.
|
| |
| |
| |
| | |
Accidentally went straight to develop
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This allows the client to complete the email last which is more
natual for the user. Without this stage, if the client would
complete the recaptcha (and terms, if enabled) stages and then the
registration request would complete because you've now completed a
flow, even if you were intending to complete the flow that's the
same except has email auth at the end.
Adding a dummy auth stage to the recaptcha-only flow means it's
always unambiguous which flow the client was trying to complete.
Longer term we should think about changing the protocol so the
client explicitly says which flow it's trying to complete.
https://github.com/vector-im/riot-web/issues/9586
|
| |
| |
| |
| | |
... mostly to fix pep8 fails
|
| |
| |
| | |
Fixes #3951.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
CS API (#5083)
This commit adds two config options:
* `restrict_public_rooms_to_local_users`
Requires auth to fetch the public rooms directory through the CS API and disables fetching it through the federation API.
* `require_auth_for_profile_requests`
When set to `true`, requires that requests to `/profile` over the CS API are authenticated, and only returns the user's profile if the requester shares a room with the profile's owner, as per MSC1301.
MSC1301 also specifies a behaviour for federation (only returning the profile if the server asking for it shares a room with the profile's owner), but that's currently really non-trivial to do in a not too expensive way. Next step is writing down a MSC that allows a HS to specify which user sent the profile query. In this implementation, Synapse won't send a profile query over federation if it doesn't believe it already shares a room with the profile's owner, though.
Groups have been intentionally omitted from this commit.
|
|\ \
| | |
| | | |
Limit in flight DNS requests
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This is to work around a bug in twisted where a large number of
concurrent DNS requests cause it to tight loop forever.
c.f. https://twistedmatrix.com/trac/ticket/9620#ticket
|
| | |
| | |
| | |
| | |
| | | |
Follow-up to #5124
Also added a bunch of checks to make sure everything (both the stuff added on #5124 and this PR) works as intended.
|
|\ \ \
| | | |
| | | | |
Ratelimit 3pid invites
|
| | | | |
|
| |\ \ \
| | | | |
| | | | |
| | | | | |
erikj/ratelimit_3pid_invite
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
We do ratelimit sending the 3PID invite events, but that happens after
spamming the identity server.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This endpoint isn't much use for its intended purpose if you first need to get
yourself an admin's auth token.
I've restricted it to the `/_synapse/admin` path to make it a bit easier to
lock down for those concerned about exposing this information. I don't imagine
anyone is using it in anger currently.
|
|\ \ \ \ \ |
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| |\ \ \ \ \
| | | | | | |
| | | | | | | |
Blacklist 0.0.0.0 and :: by default for URL previews
|
| | | | | | | |
|
| | | | | | | |
|
| |\ \ \ \ \ \
| | |/ / / / /
| |/| | | | | |
Use SystemRandom for token generation.
|
| | | | | | | |
|
| | | | | | | |
|
|\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | | |
Add some limitations to alias creation
|
| | | | | | | | |
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Rather than copying-and-pasting the same four lines hundreds of times
|