summary refs log tree commit diff
path: root/synapse/api/errors.py (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Describe which rate limiter was hit in logs (#16135)David Robertson2023-08-301-2/+12
|
* Add `Retry-After` to M_LIMIT_EXCEEDED error responses (#16136)Will Hunt2023-08-241-1/+9
| | | Implements MSC4041 behind an experimental configuration flag.
* Implements admin API to lock an user (MSC3939) (#15870)Mathieu Velten2023-08-101-0/+2
|
* Re-introduce the outbound federation proxy (#15913)Eric Eastwood2023-07-181-0/+7
| | | | | Allow configuring the set of workers to proxy outbound federation traffic through (`outbound_federation_restricted_to`). This is useful when you have a worker setup with `federation_sender` instances responsible for sending outbound federation requests and want to make sure *all* outbound federation traffic goes through those instances. Before this change, the generic workers would still contact federation themselves for things like profile lookups, backfill, etc. This PR allows you to set more strict access controls/firewall for all workers and only allow the `federation_sender`'s to contact the outside world.
* Actually enforce guest + return www-authenticate headerHugh Nimmo-Smith2023-05-301-3/+25
|
* Stabilize MSC2659 support for AS ping endpoint. (#15528)Tulir Asokan2023-05-091-4/+4
|
* Fix spinloop during partial state sync when a prev event is in backoff (#15351)Sean Quah2023-03-301-4/+13
| | | | | | | | Previously, we would spin in a tight loop until `update_state_for_partial_state_event` stopped raising `FederationPullAttemptBackoffError`s. Replace the spinloop with a wait until the backoff period has expired. Signed-off-by: Sean Quah <seanq@matrix.org>
* Implement MSC2659: application service ping endpoint (#15249)Tulir Asokan2023-03-161-0/+5
| | | Signed-off-by: Tulir Asokan <tulir@maunium.net>
* Update the error code for duplicate annotation (#15075)Richard van der Hoff2023-02-151-0/+4
|
* Faster joins: don't stall when a user joins during a fast join (#14606)Mathieu Velten2023-02-101-0/+22
| | | | | | | | | | | | | | | | Fixes #12801. Complement tests are at https://github.com/matrix-org/complement/pull/567. Avoid blocking on full state when handling a subsequent join into a partial state room. Also always perform a remote join into partial state rooms, since we do not know whether the joining user has been banned and want to avoid leaking history to banned users. Signed-off-by: Mathieu Velten <mathieuv@matrix.org> Co-authored-by: Sean Quah <seanq@matrix.org> Co-authored-by: David Robertson <davidr@element.io>
* Improve validation of field size limits in events. (#14664)reivilibre2022-12-131-1/+10
|
* Respond with proper error responses on unknown paths. (#14621)Patrick Cloke2022-12-081-4/+2
| | | | Returns a proper 404 with an errcode of M_RECOGNIZED for unknown endpoints per MSC3743.
* Remove redundant types from comments. (#14412)Patrick Cloke2022-11-161-1/+1
| | | | | | | Remove type hints from comments which have been added as Python type hints. This helps avoid drift between comments and reality, as well as removing redundant information. Also adds some missing type hints which were simple to fill in.
* Explain `SynapseError` and `FederationError` better (#14191)Eric Eastwood2022-10-191-3/+21
| | | | | Explain `SynapseError` and `FederationError` better Spawning from https://github.com/matrix-org/synapse/pull/13816#discussion_r993262622
* Stop getting missing `prev_events` after we already know their signature is ↵Eric Eastwood2022-10-151-0/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | invalid (#13816) While https://github.com/matrix-org/synapse/pull/13635 stops us from doing the slow thing after we've already done it once, this PR stops us from doing one of the slow things in the first place. Related to - https://github.com/matrix-org/synapse/issues/13622 - https://github.com/matrix-org/synapse/pull/13635 - https://github.com/matrix-org/synapse/issues/13676 Part of https://github.com/matrix-org/synapse/issues/13356 Follow-up to https://github.com/matrix-org/synapse/pull/13815 which tracks event signature failures. With this PR, we avoid the call to the costly `_get_state_ids_after_missing_prev_event` because the signature failure will count as an attempt before and we filter events based on the backoff before calling `_get_state_ids_after_missing_prev_event` now. For example, this will save us 156s out of the 185s total that this `matrix.org` `/messages` request. If you want to see the full Jaeger trace of this, you can drag and drop this `trace.json` into your own Jaeger, https://gist.github.com/MadLittleMods/4b12d0d0afe88c2f65ffcc907306b761 To explain this exact scenario around `/messages` -> backfill, we call `/backfill` and first check the signatures of the 100 events. We see bad signature for `$luA4l7QHhf_jadH3mI-AyFqho0U2Q-IXXUbGSMq6h6M` and `$zuOn2Rd2vsC7SUia3Hp3r6JSkSFKcc5j3QTTqW_0jDw` (both member events). Then we process the 98 events remaining that have valid signatures but one of the events references `$luA4l7QHhf_jadH3mI-AyFqho0U2Q-IXXUbGSMq6h6M` as a `prev_event`. So we have to do the whole `_get_state_ids_after_missing_prev_event` rigmarole which pulls in those same events which fail again because the signatures are still invalid. - `backfill` - `outgoing-federation-request` `/backfill` - `_check_sigs_and_hash_and_fetch` - `_check_sigs_and_hash_and_fetch_one` for each event received over backfill - ❗ `$luA4l7QHhf_jadH3mI-AyFqho0U2Q-IXXUbGSMq6h6M` fails with `Signature on retrieved event was invalid.`: `unable to verify signature for sender domain xxx: 401: Failed to find any key to satisfy: _FetchKeyRequest(...)` - ❗ `$zuOn2Rd2vsC7SUia3Hp3r6JSkSFKcc5j3QTTqW_0jDw` fails with `Signature on retrieved event was invalid.`: `unable to verify signature for sender domain xxx: 401: Failed to find any key to satisfy: _FetchKeyRequest(...)` - `_process_pulled_events` - `_process_pulled_event` for each validated event - ❗ Event `$Q0iMdqtz3IJYfZQU2Xk2WjB5NDF8Gg8cFSYYyKQgKJ0` references `$luA4l7QHhf_jadH3mI-AyFqho0U2Q-IXXUbGSMq6h6M` as a `prev_event` which is missing so we try to get it - `_get_state_ids_after_missing_prev_event` - `outgoing-federation-request` `/state_ids` - ❗ `get_pdu` for `$luA4l7QHhf_jadH3mI-AyFqho0U2Q-IXXUbGSMq6h6M` which fails the signature check again - ❗ `get_pdu` for `$zuOn2Rd2vsC7SUia3Hp3r6JSkSFKcc5j3QTTqW_0jDw` which fails the signature check
* Allow admins to require a manual approval process before new accounts can be ↵Brendan Abolivier2022-09-291-0/+16
| | | | used (using MSC3866) (#13556)
* Faster Remote Room Joins: tell remote homeservers that we are unable to ↵reivilibre2022-09-231-0/+6
| | | | authorise them if they query a room which has partial state on our server. (#13823)
* Implement MSC3848: Introduce errcodes for specific event sending failures ↵Will Hunt2022-07-271-10/+48
| | | | | (#13343) Implements MSC3848
* Uniformize spam-checker API, part 5: expand other spam-checker callbacks to ↵David Teller2022-07-111-2/+8
| | | | | | return `Tuple[Codes, dict]` (#13044) Signed-off-by: David Teller <davidt@element.io> Co-authored-by: Brendan Abolivier <babolivier@matrix.org>
* Fix M_USER_ACCOUNT_SUSPENDED error code for spec compliance (#12923)Travis Ralston2022-05-311-1/+1
|
* Revert "Fix M_USER_ACCOUNT_SUSPENDED error code for spec compliance (#12922)"Travis Ralston2022-05-301-1/+1
| | | | This reverts commit e0fae823e9938618a260adadb82bfee6e4c2f907.
* Fix M_USER_ACCOUNT_SUSPENDED error code for spec compliance (#12922)Travis Ralston2022-05-311-1/+1
| | | `M_` is a reserved namespace.
* Uniformize spam-checker API, part 3: Expand check_event_for_spam with the ↵David Teller2022-05-301-10/+13
| | | | | ability to return additional fields (#12846) Signed-off-by: David Teller <davidt@element.io>
* Add code M_USER_ACCOUNT_SUSPENDED, as per MSC3823. (#12845)David Teller2022-05-271-0/+7
| | | | Signed-off-by: David Teller <davidt@element.io> Co-authored-by: Brendan Abolivier <babolivier@matrix.org>
* Uniformize spam-checker API, part 2: check_event_for_spam (#12808)David Teller2022-05-231-3/+1
| | | Signed-off-by: David Teller <davidt@element.io>
* Uniformize spam-checker API, part 1: the `Code` enum. (#12703)David Teller2022-05-201-2/+9
|
* Implement MSC2815: allow room moderators to view redacted event content (#12427)Tulir Asokan2022-04-201-0/+18
| | | | | | Implements matrix-org/matrix-spec-proposals#2815 Signed-off-by: Tulir Asokan <tulir@maunium.net>
* Fix M_WRONG_ROOM_KEYS_VERSION error not including `current_version` field ↵Michael Telatynski2022-02-141-0/+3
| | | | | (#11988) Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Make `check_event_allowed` module API callback not fail open (accept events) ↵reivilibre2021-11-011-0/+7
| | | | when an exception is raised (#11033)
* Add missing type hints to synapse.api. (#11109)Patrick Cloke2021-10-181-46/+23
| | | | * Convert UserPresenceState to attrs. * Remove args/kwargs from error classes and explicitly pass msg/errorcode.
* Validate device_keys for C-S /keys/query requests (#10593)David Robertson2021-08-201-0/+8
| | | | | | | | * Validate device_keys for C-S /keys/query requests Closes #10354 A small, not particularly critical fix. I'm interested in seeing if we can find a more systematic approach though. #8445 is the place for any discussion.
* Update the MSC3083 support to verify if joins are from an authorized server. ↵Patrick Cloke2021-07-261-0/+3
| | | | (#10254)
* Use inline type hints in various other places (in `synapse/`) (#10380)Jonathan de Jong2021-07-151-2/+2
|
* Implement knock feature (#6739)Sorunome2021-06-091-1/+1
| | | | | | This PR aims to implement the knock feature as proposed in https://github.com/matrix-org/matrix-doc/pull/2403 Signed-off-by: Sorunome mail@sorunome.de Signed-off-by: Andrew Morgan andrewm@element.io
* Remove redundant "coding: utf-8" lines (#9786)Jonathan de Jong2021-04-141-1/+0
| | | | | | | Part of #9744 Removes all redundant `# -*- coding: utf-8 -*-` lines from files, as python 3 automatically reads source code as utf-8 now. `Signed-off-by: Jonathan de Jong <jonathan@automatia.nl>`
* Update black, and run auto formatting over the codebase (#9381)Eric Eastwood2021-02-161-10/+11
| | | | | | | - Update black version to the latest - Run black auto formatting over the codebase - Run autoformatting according to [`docs/code_style.md `](https://github.com/matrix-org/synapse/blob/80d6dc9783aa80886a133756028984dbf8920168/docs/code_style.md) - Update `code_style.md` docs around installing black to use the correct version
* Simplify super() calls to Python 3 syntax. (#8344)Patrick Cloke2020-09-181-27/+23
| | | | | | | This converts calls like super(Foo, self) -> super(). Generated with: sed -i "" -Ee 's/super\([^\(]+\)/super()/g' **/*.py
* Stop sub-classing object (#8249)Patrick Cloke2020-09-041-1/+1
|
* Stop shadow-banned users from sending invites. (#8095)Patrick Cloke2020-08-201-0/+8
|
* Be stricter about JSON that is accepted by Synapse (#8106)Patrick Cloke2020-08-191-3/+3
|
* Improve performance of the register endpoint (#8009)Patrick Cloke2020-08-061-1/+3
|
* Ensure that calls to `json.dumps` are compatible with the standard library ↵Patrick Cloke2020-07-151-1/+3
| | | | json. (#7836)
* Improve the type hints of synapse.api.errors. (#7820)Patrick Cloke2020-07-141-55/+73
|
* Do not use canonicaljson to magically handle decoding bytes from JSON. (#7802)Patrick Cloke2020-07-101-4/+2
|
* Replace all remaining six usage with native Python 3 equivalents (#7704)Dagfinn Ilmari Mannsåker2020-06-161-4/+3
|
* Replace iteritems/itervalues/iterkeys with native versions. (#7692)Patrick Cloke2020-06-151-2/+1
|
* Convert http.HTTPStatus objects to their int equivalent (#7188)Andrew Morgan2020-04-031-1/+8
|
* Allow server admins to define and enforce a password policy (MSC2000). (#7118)Dirk Klimpel2020-03-261-0/+21
|
* Validate the alt_aliases property of canonical alias events (#6971)Patrick Cloke2020-03-031-0/+1
|
* Add `get_room_version` methodRichard van der Hoff2020-01-311-4/+2
| | | | So that we can start factoring out some of this boilerplatey boilerplate.
* Implement RedirectException (#6687)Richard van der Hoff2020-01-151-1/+26
| | | | | Allow REST endpoint implemnentations to raise a RedirectException, which will redirect the user's browser to a given location.
* Kill off RegistrationError (#6691)Richard van der Hoff2020-01-131-6/+0
| | | This is pretty pointless. Let's just use SynapseError.
* Replace instance variations of homeserver with correct case/spacingAndrew Morgan2019-11-121-1/+1
|
* Merge branch 'develop' into uhoreg/e2e_cross-signing_mergedHubert Chathi2019-10-181-1/+2
|\
| * Fix up some typechecking (#6150)Amber Brown2019-10-021-1/+2
| | | | | | | | | | | | * type checking fixes * changelog
* | Merge branch 'uhoreg/e2e_cross-signing_merged' into cross-signing_keysHubert Chathi2019-08-281-1/+2
|\|
| * Change user deactivated errcode to USER_DEACTIVATED and use it (#5686)Andrew Morgan2019-07-311-1/+2
| | | | | | | | | | This is intended as an amendment to #5674 as using M_UNKNOWN as the errcode makes it hard for clients to differentiate between an invalid password and a deactivated user (the problem we were trying to solve in the first place). M_UNKNOWN was originally chosen as it was presumed than an MSC would have to be carried out to add a new code, but as Synapse often is the testing bed for new MSC implementations, it makes sense to try it out first in the wild and then add it into the spec if it is successful. Thus this PR return a new M_USER_DEACTIVATED code when a deactivated user attempts to login.
* | allow uploading keys for cross-signingHubert Chathi2019-07-251-0/+1
|/
* Return a different error from Invalid Password when a user is deactivated ↵Andrew Morgan2019-07-151-0/+16
| | | | | (#5674) Return `This account has been deactivated` instead of `Invalid password` when a user is deactivated.
* Implement access token expiry (#5660)Richard van der Hoff2019-07-121-1/+7
| | | | Record how long an access token is valid for, and raise a soft-logout once it expires.
* Clean up exception handling for access_tokens (#5656)Richard van der Hoff2019-07-111-1/+32
| | | | | | | | | | | | | | | | First of all, let's get rid of `TOKEN_NOT_FOUND_HTTP_STATUS`. It was a hack we did at one point when it was possible to return either a 403 or a 401 if the creds were missing. We always return a 401 in these cases now (thankfully), so it's not needed. Let's also stop abusing `AuthError` for these cases. Honestly they have nothing that relates them to the other places that `AuthError` is used, other than the fact that they are loosely under the 'Auth' banner. It makes no sense for them to share exception classes. Instead, let's add a couple of new exception classes: `InvalidClientTokenError` and `MissingClientTokenError`, for the `M_UNKNOWN_TOKEN` and `M_MISSING_TOKEN` cases respectively - and an `InvalidClientCredentialsError` base class for the two of them.
* Run Black. (#5482)Amber Brown2019-06-201-59/+53
|
* Add ability to perform password reset via email without trusting the ↵Andrew Morgan2019-06-061-0/+9
| | | | | | | | | | | | 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
* Fix error handling for rooms whose versions are unknown. (#5219)Richard van der Hoff2019-05-211-1/+15
| | | | | | | 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.
* Remove periods from copyright headers (#5046)Andrew Morgan2019-04-111-1/+1
|
* Add account expiration featureBrendan Abolivier2019-04-091-0/+1
|
* Refactor request sending to have better excpetions (#4358)Erik Johnston2019-01-081-0/+18
| | | | | | | | | | | | | | * Correctly retry and back off if we get a HTTPerror response * Refactor request sending to have better excpetions MatrixFederationHttpClient blindly reraised exceptions to the caller without differentiating "expected" failures (e.g. connection timeouts etc) versus more severe problems (e.g. programming errors). This commit adds a RequestSendFailed exception that is raised when "expected" failures happen, allowing the TransactionQueue to log them as warnings while allowing us to log other exceptions as actual exceptions.
* PR feedback pt. 1David Baker2018-10-121-8/+0
|
* Fix mergefailDavid Baker2018-10-091-1/+1
|
* Merge remote-tracking branch 'origin/develop' into dbkr/e2e_backupsDavid Baker2018-10-091-3/+3
|\
| * Change admin_uri to admin_contact in config and errorsErik Johnston2018-08-241-3/+3
| |
* | try to make flake8 and isort happyHubert Chathi2018-09-061-0/+1
| |
* | Merge branch 'develop' into e2e_backupsHubert Chathi2018-08-241-2/+42
|\|
| * rename error codeNeil Johnson2018-08-181-2/+2
| |
| * add new error type ResourceLimitNeil Johnson2018-08-161-2/+21
| |
| * clean up AuthErrorNeil Johnson2018-08-151-7/+3
| |
| * update error codes for resource limitingNeil Johnson2018-08-151-2/+1
| |
| * replace admin_email with admin_uri for greater flexibilityNeil Johnson2018-08-151-2/+2
| |
| * support admin_email config and pass through into blocking errors, return ↵Neil Johnson2018-08-131-2/+11
| | | | | | | | AuthError in all cases
| * Revert "support admin_email config and pass through into blocking errors, ↵Neil Johnson2018-08-131-11/+2
| | | | | | | | | | | | return AuthError in all cases" This reverts commit 0d43f991a19840a224d3dac78d79f13d78212ee6.
| * support admin_email config and pass through into blocking errors, return ↵Neil Johnson2018-08-131-2/+11
| | | | | | | | AuthError in all cases
| * fix pep8 too many linesNeil Johnson2018-08-081-1/+0
| |
| * Merge branch 'develop' into neilj/disable_hsNeil Johnson2018-08-081-0/+25
| |\
| | * Enforce compatibility when processing make_join requestsRichard van der Hoff2018-08-031-0/+22
| | | | | | | | | | | | | | | | | | Reject make_join requests from servers which do not support the room version. Also include the room version in the response.
| | * Basic support for room versioningRichard van der Hoff2018-08-031-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | This is the first tranche of support for room versioning. It includes: * setting the default room version in the config file * new room_version param on the createRoom API * storing the version of newly-created rooms in the m.room.create event * fishing the version of existing rooms out of the m.room.create event
| * | disable HS from configNeil Johnson2018-08-041-0/+1
| |/
* | blindly incorporate PR review - needs testing & fixingMatthew Hodgson2018-08-121-3/+8
| |
* | implement /room_keys/version too (untested)Matthew Hodgson2018-08-121-0/+25
|/
* Merge pull request #3639 from matrix-org/rav/refactor_error_handlingRichard van der Hoff2018-08-021-53/+53
|\ | | | | Clean up handling of errors from outbound requests
| * Kill off MatrixCodeMessageExceptionRichard van der Hoff2018-08-011-11/+0
| | | | | | | | | | | | | | | | | | | | | | This code brings the SimpleHttpClient into line with the MatrixFederationHttpClient by having it raise HttpResponseExceptions when a request fails (rather than trying to parse for matrix errors and maybe raising MatrixCodeMessageException). Then, whenever we were checking for MatrixCodeMessageException and turning them into SynapseErrors, we now need to check for HttpResponseExceptions and call to_synapse_error.
| * Refactor code for turning HttpResponseException into SynapseErrorRichard van der Hoff2018-08-011-31/+53
| | | | | | | | | | | | | | | | This commit replaces SynapseError.from_http_response_exception with HttpResponseException.to_synapse_error. The new method actually returns a ProxiedRequestError, which allows us to pass through additional metadata from the API call.
| * Be more careful which errors we send back over the C-S APIRichard van der Hoff2018-08-011-11/+0
| | | | | | | | | | | | | | | | | | | | | | | | We really shouldn't be sending all CodeMessageExceptions back over the C-S API; it will include things like 401s which we shouldn't proxy. That means that we need to explicitly turn a few HttpResponseExceptions into SynapseErrors in the federation layer. The effect of the latter is that the matrix errcode will get passed through correctly to calling clients, which might help with some of the random M_UNKNOWN errors when trying to join rooms.
* | limit register and sign in on number of monthly usersNeil Johnson2018-07-301-0/+1
|/
* run isortAmber Brown2018-07-091-2/+2
|
* Attempt to be more performant on PyPy (#3462)Amber Brown2018-06-281-1/+2
|
* custom error code for not leaving server notices roomRichard van der Hoff2018-05-221-0/+1
|
* Reject attempts to send event before privacy consent is givenRichard van der Hoff2018-05-221-1/+29
| | | | | | Returns an M_CONSENT_NOT_GIVEN error (cf https://github.com/matrix-org/matrix-doc/issues/1252) if consent is not yet given.
* Use six.itervalues in some placesAdrian Tschira2018-04-151-1/+2
| | | | | | There's more where that came from Signed-off-by: Adrian Tschira <nota@notafile.com>
* Use simplejson throughoutRichard van der Hoff2018-03-291-1/+2
| | | | Let's use simplejson rather than json, for consistency.
* Add federation_domain_whitelist option (#2820)Matthew Hodgson2018-01-221-0/+26
| | | | | | Add federation_domain_whitelist gives a way to restrict which domains your HS is allowed to federate with. useful mainly for gracefully preventing a private but internet-connected HS from trying to federate to the wider public Matrix network
* add registrations_require_3pidMatthew Hodgson2018-01-191-0/+1
| | | | | lets homeservers specify a whitelist for 3PIDs that users are allowed to associate with. Typically useful for stopping people from registering with non-work emails
* Refactor UI auth implementationRichard van der Hoff2017-12-051-0/+16
| | | | | Instead of returning False when auth is incomplete, throw an exception which can be caught with a wrapper.
* Use CodeMessageException subclass insteadDavid Baker2017-04-251-0/+11
| | | | | Parse json errors from get_json client methods and throw special errors.
* Address review commentsRichard van der Hoff2017-03-141-5/+14
| | | | | | | - don't blindly proxy all HTTPRequestExceptions - log unexpected exceptions at error - avoid `isinstance` - improve docs on `from_http_response_exception`
* re-refactor exception heirarchyRichard van der Hoff2017-03-141-16/+14
| | | | | Give CodeMessageException back its `msg` attribute, and use that to hold the HTTP status message for HttpResponseException.
* Fix routing loop when fetching remote mediaRichard van der Hoff2017-03-131-7/+52
| | | | | | | | | | | When we proxy a media request to a remote server, add a query-param, which will tell the remote server to 404 if it doesn't recognise the server_name. This should fix a routing loop where the server keeps forwarding back to itself. Also improves the error handling on remote media fetches, so that we don't always return a rather obscure 502.
* Fail with a coherent error message if `/sync?filter=` is invalidKegan Dougal2016-11-211-0/+1
|
* Implement https://github.com/matrix-org/matrix-doc/pull/346/filesDavid Baker2016-07-081-0/+1
|
* requestToken updateDavid Baker2016-06-301-1/+2
| | | | | | Don't send requestToken request to untrusted ID servers Also correct the THREEPID_IN_USE error to add the M_ prefix. This is a backwards incomaptible change, but the only thing using this is the angular client which is now unmaintained, so it's probably better to just do this now.
* Revert "Merge two of the room join codepaths"Daniel Wagner-Hall2016-02-121-5/+0
| | | | | | This reverts commit cf81375b94c4763766440471e632fc4b103450ab. It subtly violates a guest joining auth check
* Merge two of the room join codepathsDaniel Wagner-Hall2016-02-121-0/+5
| | | | | | | | | | | | | There's at least one more to merge in. Side-effects: * Stop reporting None as displayname and avatar_url in some cases * Joining a room by alias populates guest-ness in join event * Remove unspec'd PUT version of /join/<room_id_or_alias> which has not been called on matrix.org according to logs * Stop recording access_token_id on /join/room_id - currently we don't record it on /join/room_alias; I can try to thread it through at some point.
* Require unbanning before other membership changesDaniel Wagner-Hall2016-01-151-0/+1
|
* M_INVALID_USERNAME to be consistent with the parameter nameDavid Baker2016-01-151-1/+1
|
* Add specific error code for invalid user names.David Baker2016-01-141-0/+1
|
* copyrightsMatthew Hodgson2016-01-071-1/+1
|
* Guest users must be joined to a room to see it in /syncMark Haines2016-01-061-16/+0
|
* Include the list of bad room ids in the errorMark Haines2015-12-221-0/+16
|
* Allow guests to register and call /events?room_id=Daniel Wagner-Hall2015-11-041-0/+1
| | | | | | | This follows the same flows-based flow as regular registration, but as the only implemented flow has no requirements, it auto-succeeds. In the future, other flows (e.g. captcha) may be required, so clients should treat this like the regular registration flow choices.
* Reject events which are too largeDaniel Wagner-Hall2015-10-221-0/+9
| | | | SPEC-222
* Remove log line that was generated whenever an error was created. We are now ↵Mark Haines2015-10-061-1/+0
| | | | creating error objects that aren't raised so it's probably a bit too confusing to keep
* synapse/api/errors.py:RoomError was unusedMark Haines2015-09-221-5/+0
|
* Add endpoint that proxies ID server request token and errors if the given ↵David Baker2015-08-041-0/+1
| | | | email is in use on this Home Server.
* Merge branch 'develop' into csauthDavid Baker2015-04-241-2/+2
|\ | | | | | | | | Conflicts: synapse/http/server.py
| * No commas here, otherwise our error string constants become tuples.David Baker2015-04-241-2/+2
| |
* | Dedicated error code for failed 3pid auth verificationDavid Baker2015-04-231-0/+1
| |
* | Add an error code to 'missing token' response.David Baker2015-04-231-0/+1
|/
* Grant ASes the ability to create alias in their own namespace.Kegan Dougal2015-02-061-1/+2
| | | | | | Add a new errcode type M_EXCLUSIVE when users try to create aliases inside AS namespaces, and when ASes try to create aliases outside their own namespace.
* Apply sanity to the transport client interface. Convert 'make_join' and ↵Erik Johnston2015-02-041-1/+7
| | | | 'send_join' to accept iterables of destinations
* Code style fixes.Mark Haines2015-01-291-0/+1
|
* Add slightly pedantic trailing slash error.David Baker2015-01-231-1/+6
|
* right super() paramDavid Baker2015-01-231-1/+1
|
* As yet fairly untested GET API for push rulesDavid Baker2015-01-221-1/+13
|
* Oops: second part of commit dc938606David Baker2015-01-221-0/+12
|
* Merge branch 'develop' into pushersDavid Baker2015-01-131-1/+1
|\
| * Update copyright noticesMark Haines2015-01-061-1/+1
| |
* | Merge branch 'develop' into pushersDavid Baker2014-12-181-1/+2
|\| | | | | | | | | | | | | Conflicts: synapse/api/errors.py synapse/server.py synapse/storage/__init__.py
| * Limit the size of images that are thumbnailed serverside. Limit the size of ↵Mark Haines2014-12-111-0/+1
| | | | | | | | file that a server will download from a remote server
* | Merge branch 'develop' into pushersDavid Baker2014-11-201-2/+5
|\|
| * Use module loggers rather than the root logger. Exceptions caused by bad ↵Mark Haines2014-11-201-2/+5
| | | | | | | | clients shouldn't cause ERROR level logging. Fix sql logging to use 'repr' rather than 'str'
* | Start creating a module to do generic notifications (just prints them to ↵David Baker2014-11-191-0/+1
|/ | | | stdout currently!)
* Move FederationError to synapse.api.errorsErik Johnston2014-11-041-0/+34
|
* Fix pep8 warningsMark Haines2014-10-301-1/+3
|
* Respond with more helpful error messages for unsigned requestsMark Haines2014-10-131-0/+1
|
* Captchas now work on registration. Missing x-forwarded-for config arg ↵Kegan Dougal2014-09-051-1/+15
| | | | support. Missing reloading a new captcha on the web client / displaying a sensible error message.
* Added a captcha config to the HS, to enable registration captcha checking ↵Kegan Dougal2014-09-051-0/+1
| | | | and for the recaptcha private key.
* fix the copyright holder from matrix.org to OpenMarket Ltd, as matrix.org ↵Matthew Hodgson2014-09-031-1/+1
| | | | hasn't been incorporated in time for launch.
* Set status message for ratelimit error responsesMark Haines2014-09-031-0/+2
|
* Raise LimitExceedError when the ratelimiting is throttling requestsMark Haines2014-09-031-7/+27
|
* Add ratelimiting function to basehandlerMark Haines2014-09-021-0/+1
|
* Added M_UNKNOWN_TOKEN error code and send it when there is an unrecognised ↵Kegan Dougal2014-08-141-0/+1
| | | | access_token
* Default error code BAD_PAGINATION for EventStreamErrorsKegan Dougal2014-08-141-1/+4
|
* add in whitespace after copyright statements to improve legibilityMatthew Hodgson2014-08-131-0/+1
|
* Reference Matrix Home Servermatrix.org2014-08-121-0/+114