summary refs log tree commit diff
path: root/synapse/handlers (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | | | | | | Return timeout error to user for identity server calls (#6073)Andrew Morgan2020-02-252-11/+37
|\| | | | | | | |
| * | | | | | | | Return timeout error to user for identity server calls (#6073)Andrew Morgan2019-09-232-11/+37
| | | | | | | | |
* | | | | | | | | Allow HS to send emails when adding an email to the HS (#6042)Andrew Morgan2020-02-251-10/+2
|\| | | | | | | |
| * | | | | | | | Allow HS to send emails when adding an email to the HS (#6042)Andrew Morgan2019-09-201-14/+3
| | |/ / / / / / | |/| | | | | |
* | | | | | | | v2 3PID Invites (part of MSC2140) (#5979)Andrew Morgan2020-02-251-25/+84
|\| | | | | | |
| * | | | | | | v2 3PID Invites (part of MSC2140) (#5979)Andrew Morgan2019-09-171-23/+81
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3PID invites require making a request to an identity server to check that the invited 3PID has an Matrix ID linked, and if so, what it is. These requests are being made on behalf of a user. The user will supply an identity server and an access token for that identity server. The homeserver will then forward this request with the access token (using an `Authorization` header) and, if the given identity server doesn't support v2 endpoints, will fall back to v1 (which doesn't require any access tokens). Requires: ~~#5976~~
* | | | | | | | Fix race condition in room stats. (#6029)Andrew Morgan2020-02-251-4/+10
|\| | | | | | |
| * | | | | | | Fix race condition in room stats. (#6029)Erik Johnston2019-09-171-4/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Broke in #5971 Basically the bug is that if get_current_state_deltas returns no new updates and we then take the max pos, its possible that we miss an update that happens in between the two calls. (e.g. get_current_state_deltas looks up to stream pos 5, then an event persists and so getting the max stream pos returns 6, meaning that next time we check for things with a stream pos bigger than 6)
* | | | | | | | Use the v2 Identity Service API for lookups (MSC2134 + MSC2140) (#5976)Andrew Morgan2020-02-253-32/+239
|\| | | | | | |
| * | | | | | | Use the v2 Identity Service API for lookups (MSC2134 + MSC2140) (#5976)Andrew Morgan2019-09-113-35/+203
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a redo of https://github.com/matrix-org/synapse/pull/5897 but with `id_access_token` accepted. Implements [MSC2134](https://github.com/matrix-org/matrix-doc/pull/2134) plus Identity Service v2 authentication ala [MSC2140](https://github.com/matrix-org/matrix-doc/pull/2140). Identity lookup-related functions were also moved from `RoomMemberHandler` to `IdentityHandler`.
* | | | | | | | Merge pull request #6015 from matrix-org/erikj/ratelimit_admin_redactionAndrew Morgan2020-02-252-12/+53
|\| | | | | | |
| * | | | | | | Merge pull request #6015 from matrix-org/erikj/ratelimit_admin_redactionErik Johnston2019-09-112-12/+53
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | Allow use of different ratelimits for admin redactions.
| | * | | | | | | Fix commentsErik Johnston2019-09-112-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Co-Authored-By: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com>
| | * | | | | | | Fix how we check for self redactionErik Johnston2019-09-111-4/+18
| | | | | | | | |
| | * | | | | | | Allow use of different ratelimits for admin redactions.Erik Johnston2019-09-112-12/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is useful to allow room admins to quickly deal with a large number of abusive messages.
* | | | | | | | | Add note about extra arg to send_membership_event, remove arg in ↵Andrew Morgan2020-02-251-10/+2
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | remote_reject_invite (#6009)
| * | | | | | | | Add note about extra arg to send_membership_event, remove arg in ↵Andrew Morgan2019-09-111-10/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | remote_reject_invite (#6009) Some small fixes to `room_member.py` found while doing other PRs. 1. Add requester to the base `_remote_reject_invite` method. 2. `send_membership_event`'s docstring was out of date and took in a `remote_room_hosts` arg that was not used and no calling function provided.
* | | | | | | | | Fix existing v2 identity server calls (MSC2140) (#6013)Andrew Morgan2020-02-251-2/+26
|\| | | | | | | |
| * | | | | | | | Fix existing v2 identity server calls (MSC2140) (#6013)Andrew Morgan2019-09-111-2/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Two things I missed while implementing [MSC2140](https://github.com/matrix-org/matrix-doc/pull/2140/files#diff-c03a26de5ac40fb532de19cb7fc2aaf7R80). 1. Access tokens should be provided to the identity server as `access_token`, not `id_access_token`, even though the homeserver may accept the tokens as `id_access_token`. 2. Access tokens must be sent to the identity server in a query parameter, the JSON body is not allowed. We now send the access token as part of an `Authorization: ...` header, which fixes both things. The breaking code was added in https://github.com/matrix-org/synapse/pull/5892 Sytest PR: https://github.com/matrix-org/sytest/pull/697
* | | | | | | | | Remove origin parameter from add_display_name_to_third_party_invite and add ↵Andrew Morgan2020-02-251-1/+6
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | params to docstring (#6010)
| * | | | | | | | Remove origin parameter from add_display_name_to_third_party_invite and add ↵Andrew Morgan2019-09-111-1/+6
| |/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | params to docstring (#6010) Another small fixup noticed during work on a larger PR. The `origin` field of `add_display_name_to_third_party_invite` is not used and likely was just carried over from the `on_PUT` method of `FederationThirdPartyInviteExchangeServlet` which, like all other servlets, provides an `origin` argument. Since it's not used anywhere in the handler function though, we should remove it from the function arguments.
* | | | | | | | Merge pull request #6011 from matrix-org/anoa/fix_3pid_validationAndrew Morgan2020-02-252-40/+43
|\| | | | | | |
| * | | | | | | Merge pull request #6011 from matrix-org/anoa/fix_3pid_validationErik Johnston2019-09-102-41/+43
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | Use account_threepid_delegate for 3pid validation
| | * | | | | | | Add changelogAndrew Morgan2019-09-101-3/+3
| | | | | | | | |
| | * | | | | | | Use account_threepid_delegate for 3pid validationAndrew Morgan2019-09-102-41/+43
| | | | | | | | |
* | | | | | | | | Merge pull request #6004 from matrix-org/jaywink/autojoin-create-real-usersAndrew Morgan2020-02-251-8/+4
|\| | | | | | | |
| * | | | | | | | Only count real users when checking for auto-creation of auto-join roomJason Robinson2019-09-091-8/+4
| | |_|_|_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously if the first registered user was a "support" or "bot" user, when the first real user registers, the auto-join rooms were not created. Fix to exclude non-real (ie users with a special user type) users when counting how many users there are to determine whether we should auto-create a room. Signed-off-by: Jason Robinson <jasonr@matrix.org>
* | | | | | | | Ensure a sid parameter is passed to bind_threepid (#5995)Andrew Morgan2020-02-251-1/+7
|\| | | | | | |
| * | | | | | | Ensure a sid parameter is passed to bind_threepid (#5995)Andrew Morgan2019-09-061-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | `sid` is required to be part of `three_pid_creds`. We were 500'ing if it wasn't provided instead of returning `M_MISSING_PARAM`.
* | | | | | | | Merge pull request #5998 from matrix-org/erikj/fixup_federate_flagAndrew Morgan2020-02-251-1/+3
|\| | | | | | |
| * | | | | | | Correctly handle non-bool m.federate flagErik Johnston2019-09-061-1/+3
| |/ / / / / /
* | | | | | | Allow Synapse to send registration emails + choose Synapse or an external ↵Andrew Morgan2020-02-253-74/+154
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | server to handle 3pid validation (#5987)
| * | | | | | Allow Synapse to send registration emails + choose Synapse or an external ↵Andrew Morgan2019-09-063-71/+153
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | server to handle 3pid validation (#5987) This is a combination of a few different PRs, finally all being merged into `develop`: * #5875 * #5876 * #5868 (This one added the `/versions` flag but the flag itself was actually [backed out](https://github.com/matrix-org/synapse/commit/891afb57cbdf9867f2848341b29c75d6f35eef5a#diff-e591d42d30690ffb79f63bb726200891) in #5969. What's left is just giving /versions access to the config file, which could be useful in the future) * #5835 * #5969 * #5940 Clients should not actually use the new registration functionality until https://github.com/matrix-org/synapse/pull/5972 is merged. UPGRADE.rst, changelog entries and config file changes should all be reviewed closely before this PR is merged.
* | | | | | | Merge pull request #5984 from ↵Andrew Morgan2020-02-251-4/+1
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | matrix-org/joriks/opentracing_link_send_to_edu_contexts
| * | | | | | Merge pull request #5984 from ↵Erik Johnston2019-09-051-4/+1
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | matrix-org/joriks/opentracing_link_send_to_edu_contexts Link the send loop with the edus contexts
| | * | | | | | Link the send loop with the edus contextsJorik Schellekens2019-09-051-4/+1
| | | |_|_|_|/ | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The contexts were being filtered too early so the send loop wasn't being linked to them unless the destination was whitelisted.
* | | | | | | Switch to using v2 Identity Service APIs other than lookup (MSC 2140) (#5892)Andrew Morgan2020-02-251-42/+120
|\| | | | | |
| * | | | | | Switch to using v2 Identity Service APIs other than lookup (MSC 2140) (#5892)Andrew Morgan2019-09-051-41/+119
| | | | | | |
* | | | | | | Add POST /_matrix/client/r0/account/3pid/unbind (MSC2140) (#5980)Andrew Morgan2020-02-251-1/+2
|\| | | | | |
| * | | | | | Add POST /_matrix/client/r0/account/3pid/unbind (MSC2140) (#5980)Andrew Morgan2019-09-051-1/+2
| |/ / / / / | | | | | | | | | | | | Implements `POST /_matrix/client/r0/account/3pid/unbind` from [MSC2140](https://github.com/matrix-org/matrix-doc/blob/dbkr/tos_2/proposals/2140-terms-of-service-2.md#post-_matrixclientr0account3pidunbind).
* | | | | | Remove bind_email and bind_msisdn (#5964)Andrew Morgan2020-02-251-44/+6
|\| | | | |
| * | | | | Remove bind_email and bind_msisdn (#5964)Andrew Morgan2019-09-041-44/+6
| | | | | | | | | | | | | | | | | | Removes the `bind_email` and `bind_msisdn` parameters from the `/register` C/S API endpoint as per [MSC2140: Terms of Service for ISes and IMs](https://github.com/matrix-org/matrix-doc/pull/2140/files#diff-c03a26de5ac40fb532de19cb7fc2aaf7R107).
* | | | | | Fix and refactor room and user stats (#5971)Andrew Morgan2020-02-252-182/+134
|\| | | | |
| * | | | | Fix and refactor room and user stats (#5971)Erik Johnston2019-09-041-175/+132
| | | | | | | | | | | | | | | | | | Previously the stats were not being correctly populated.
| * | | | | code cleanupsAndrew Morgan2019-09-031-7/+2
| | | | | |
* | | | | | Ensure the list media admin API is always available (#5966)Andrew Morgan2020-02-251-3/+1
|\| | | | |
| * | | | | Fix docstringAndrew Morgan2019-09-031-2/+1
| | | | | |
| * | | | | Remove unnecessary variable declarationAndrew Morgan2019-09-031-1/+0
| | | | | |
* | | | | | Ensure an auth instance is available to ListMediaInRoom (#5967)Andrew Morgan2020-02-251-1/+1
|\| | | | |
| * | | | | fix typoMatthew Hodgson2019-09-031-1/+1
| | | | | |
* | | | | | Remove double return statements (#5962)Andrew Morgan2020-02-255-7/+0
|\| | | | |
| * | | | | Remove double return statements (#5962)Andrew Morgan2019-09-035-7/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove all the "double return" statements which were a result of us removing all the instances of ``` defer.returnValue(...) return ``` statements when we switched to python3 fully.
* | | | | | Opentrace device lists (#5853)Andrew Morgan2020-02-252-3/+68
|\| | | | |
| * | | | | Opentrace device lists (#5853)Jorik Schellekens2019-09-032-3/+68
| | | | | | | | | | | | | | | | | | Trace device list changes.
* | | | | | Remove unused methods from c/s api v1 in register.py (#5963)Andrew Morgan2020-02-241-185/+0
|\| | | | |
| * | | | | Remove unused methods from c/s api v1 in register.py (#5963)Andrew Morgan2019-09-021-104/+0
| | | | | | | | | | | | | | | | | | These methods were part of the v1 C/S API. Remove them as they are no longer used by any code paths.
* | | | | | Remove unnecessary parentheses around return statements (#5931)Andrew Morgan2020-02-2410-19/+21
|\| | | | |
| * | | | | Remove unnecessary parentheses around return statements (#5931)Andrew Morgan2019-08-3010-19/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Python will return a tuple whether there are parentheses around the returned values or not. I'm just sick of my editor complaining about this all over the place :)
| * | | | | Revert "Use the v2 lookup API for 3PID invites (#5897)" (#5937)Andrew Morgan2019-08-302-132/+9
| | |_|_|/ | |/| | | | | | | | | | | | | | | | | | This reverts commit 71fc04069a5770a204c3514e0237d7374df257a8. This broke 3PID invites as #5892 was required for it to work correctly.
* | | | | Revert "Use the v2 lookup API for 3PID invites (#5897)"Andrew Morgan2020-02-242-256/+176
| | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 978f263e7c5d1eb440efaf07abc5009408ade25d, reversing changes made to 4f6ee99818d9c338944a10585d0aea4c7349d456.
* | | | | Merge pull request #5902 from matrix-org/hs/exempt-support-users-from-consentAndrew Morgan2020-02-241-1/+4
|\| | | |
| * | | | Merge pull request #5902 from matrix-org/hs/exempt-support-users-from-consentWill Hunt2019-08-281-1/+4
| |\ \ \ \ | | | | | | | | | | | | Exempt support users from consent
| | * | | | Apply suggestions from code reviewWill Hunt2019-08-231-2/+2
| | | | | | | | | | | | | | | | | | Co-Authored-By: Erik Johnston <erik@matrix.org>
| | * | | | Exempt bot usersHalf-Shot2019-08-231-1/+1
| | | | | |
| | * | | | Return user_type in get_user_by_idHalf-Shot2019-08-231-1/+4
| | | | | |
* | | | | | Use the v2 lookup API for 3PID invites (#5897)Andrew Morgan2020-02-242-176/+256
|\| | | | |
| * | | | | Use the v2 lookup API for 3PID invites (#5897)Andrew Morgan2019-08-282-9/+132
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes https://github.com/matrix-org/synapse/issues/5861 Adds support for the v2 lookup API as defined in [MSC2134](https://github.com/matrix-org/matrix-doc/pull/2134). Currently this is only used for 3PID invites. Sytest PR: https://github.com/matrix-org/sytest/pull/679
* | | | | | Implement a structured logging output system. (#5680)Andrew Morgan2020-02-211-2/+3
|\| | | | |
| * | | | | Implement a structured logging output system. (#5680)Amber Brown2019-08-281-2/+3
| | | | | |
* | | | | | Merge pull request #5914 from matrix-org/rei/admin_getadminAndrew Morgan2020-02-211-0/+9
|\| | | | |
| * | | | | Merge pull request #5914 from matrix-org/rei/admin_getadminreivilibre2019-08-281-0/+9
| |\ \ \ \ \ | | | | | | | | | | | | | | Add GET method to admin API /users/@user:dom/admin
| | * | | | | Add GET method to admin API /users/@user:dom/adminOlivier Wilkinson (reivilibre)2019-08-271-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Olivier Wilkinson (reivilibre) <olivier@librepush.net>
* | | | | | | Merge pull request #5859 from matrix-org/rei/msc2197Andrew Morgan2020-02-211-1/+28
|\| | | | | |
| * | | | | | Merge pull request #5859 from matrix-org/rei/msc2197reivilibre2019-08-281-1/+28
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | MSC2197 Search Filters over Federation
| | * | | | | | Support MSC2197 outbound with unstable prefixOlivier Wilkinson (reivilibre)2019-08-151-1/+28
| | | |_|/ / / | | |/| | | | | | | | | | | | | | | | | | Signed-off-by: Olivier Wilkinson (reivilibre) <olivier@librepush.net>
* | | | | | | Merge pull request #5906 from matrix-org/neilj/increase_display_name_limitAndrew Morgan2020-02-211-1/+1
|\| | | | | |
| * | | | | | Merge pull request #5906 from matrix-org/neilj/increase_display_name_limitRichard van der Hoff2019-08-271-1/+1
| |\ \ \ \ \ \ | | |_|/ / / / | |/| | | | | Increase profile display name limit
| | * | | | | Increase max display name limitNeil Johnson2019-08-241-1/+1
| | | |/ / / | | |/| | |
* | | | | | Add Admin API capability to set adminship of a user (#5878)Andrew Morgan2020-02-211-0/+10
|\| | | | |
| * | | | | Add Admin API capability to set adminship of a user (#5878)reivilibre2019-08-271-0/+10
| |/ / / / | | | | | | | | | | Admin API: Set adminship of a user
* | | | | Propagate opentracing contexts through EDUs (#5852)Andrew Morgan2020-02-211-6/+21
|\| | | |
| * | | | Propagate opentracing contexts through EDUs (#5852)Jorik Schellekens2019-08-221-6/+21
| | | | | | | | | | | | | | | | | | | | | | | | | Propagate opentracing contexts through EDUs Co-Authored-By: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
| * | | | Revert "Add "require_consent" parameter for registration"Brendan Abolivier2019-08-221-12/+2
| | | | | | | | | | | | | | | | | | | | This reverts commit 3320aaab3a9bba3f5872371aba7053b41af9d0a0.
| * | | | Add "require_consent" parameter for registrationHalf-Shot2019-08-221-2/+12
| | | | |
* | | | | Opentrace e2e keys (#5855)Andrew Morgan2020-02-212-3/+77
|\| | | |
| * | | | Opentrace e2e keys (#5855)Jorik Schellekens2019-08-222-3/+77
| | | | | | | | | | | | | | | Add opentracing tags and logs for e2e keys
* | | | | Servlet to purge old rooms (#5845)Andrew Morgan2020-02-211-0/+17
|\| | | |
| * | | | Servlet to purge old rooms (#5845)Richard van der Hoff2019-08-221-0/+17
| | | | |
* | | | | Merge pull request #5860 from matrix-org/erikj/update_5704_commentsAndrew Morgan2020-02-211-17/+5
|\| | | |
| * | | | Merge pull request #5860 from matrix-org/erikj/update_5704_commentsErik Johnston2019-08-191-17/+5
| |\ \ \ \ | | | | | | | | | | | | Remove logging for #5407 and update comments
| | * | | | Remove logging for #5407 and update commentsErik Johnston2019-08-151-17/+5
| | |/ / /
* | | | | Don't create broken room when power_level_content_override.users does not ↵Andrew Morgan2020-02-201-1/+13
|\| | | | | | | | | | | | | | | | | | | contain creator_id. (#5633)
| * | | | Don't create broken room when power_level_content_override.users does not ↵Michael Telatynski2019-08-151-1/+13
| |/ / / | | | | | | | | | | | | contain creator_id. (#5633)
* | | | Merge pull request #5825 from matrix-org/erikj/fix_empty_limited_syncAndrew Morgan2020-02-201-6/+37
|\| | |
| * | | Handle TimelineBatch being limited and empty.Erik Johnston2019-08-061-6/+37
| | | | | | | | | | | | | | | | | | | | | | | | This hopefully addresses #5407 by gracefully handling an empty but limited TimelineBatch. We also add some logging to figure out how this is happening.
| * | | Account validity: allow defining HTML templates to serve the us… (#5807)Brendan Abolivier2019-08-011-1/+9
| |\ \ \ | | | | | | | | | | Account validity: allow defining HTML templates to serve the user on account renewal attempt
| | * | | Allow defining HTML templates to serve the user on account renewalBrendan Abolivier2019-08-011-1/+9
| | | |/ | | |/|
* | | | Merge pull request #5802 from matrix-org/erikj/deny_redacting_different_roomAndrew Morgan2020-02-201-1/+3
|\| | |
| * | | Merge pull request #5802 from matrix-org/erikj/deny_redacting_different_roomErik Johnston2019-08-011-1/+3
| |\ \ \ | | | | | | | | | | Deny redaction of events in a different room.
| | * | | Deny redaction of events in a different room.Erik Johnston2019-07-311-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | We already correctly filter out such redactions, but we should also deny them over the CS API.
* | | | | Merge pull request #5790 from matrix-org/erikj/groups_request_errorsAndrew Morgan2020-02-202-32/+60
|\| | | |
| * | | | Merge pull request #5790 from matrix-org/erikj/groups_request_errorsErik Johnston2019-08-012-32/+60
| |\ \ \ \ | | |/ / / | |/| | | Handle RequestSendFailed exception correctly in more places.
| | * | | Don't log as exception when failing durig backfillErik Johnston2019-07-301-0/+3
| | | | |
| | * | | Correctly handle errors doing requests to group serversErik Johnston2019-07-291-32/+57
| | | | |
* | | | | Change user deactivated errcode to USER_DEACTIVATED and use it (#5686)Andrew Morgan2020-02-201-1/+0
|\| | | |
| * | | | Remove duplicate return statementAndrew Morgan2019-07-311-1/+0
| | |/ / | |/| |
* | | | Merge pull request #5789 from matrix-org/erikj/fix_error_handling_keysAndrew Morgan2020-02-201-4/+3
|\| | |
| * | | Unwrap errorErik Johnston2019-07-301-1/+2
| | | |
| * | | Fix error handling when fetching remote device keysErik Johnston2019-07-301-3/+1
| | | |
* | | | Remove non-functional 'expire_access_token' setting (#5782)Andrew Morgan2020-02-201-1/+1
|\| | |
| * | | Remove non-functional 'expire_access_token' setting (#5782)Richard van der Hoff2019-07-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The `expire_access_token` didn't do what it sounded like it should do. What it actually did was make Synapse enforce the 'time' caveat on macaroons used as access tokens, but since our access token macaroons never contained such a caveat, it was always a no-op. (The code to add 'time' caveats was removed back in v0.18.5, in #1656)
* | | | Room Complexity Client Implementation (#5783)Andrew Morgan2020-02-202-4/+105
|\| | |
| * | | Room Complexity Client Implementation (#5783)Amber Brown2019-07-302-4/+105
| |/ /
* | | Merge pull request #5770 from matrix-org/erikj/fix_current_state_event_sqliteAndrew Morgan2020-02-202-2/+2
|\| |
| * | Move some timeout checking logs to DEBUG #5785 Amber Brown2019-07-302-2/+2
| | |
* | | Update the device list cache when keys/query is called (#5693)Andrew Morgan2020-02-202-82/+136
|\| |
| * | Update the device list cache when keys/query is called (#5693)Jorik Schellekens2019-07-292-74/+136
| | |
| * | Merge pull request #5744 from matrix-org/erikj/log_leave_origin_mismatchRichard van der Hoff2019-07-261-2/+35
| |\ \ | | | | | | | | Log when we receive a /make_* request from a different origin
* | \ \ Merge branch 'erikj/log_leave_origin_mismatch' into release-v1.2.1Andrew Morgan2020-02-191-2/+35
|\ \ \ \
| * \ \ \ Merge branch 'erikj/log_leave_origin_mismatch' into release-v1.2.1Richard van der Hoff2019-07-261-2/+35
| |\ \ \ \ | | | |/ / | | |/| |
| | * | | Log when we receive a /make_* request from a different originRichard van der Hoff2019-07-261-2/+35
| | | |/ | | |/|
| * / | Log when we receive receipt from a different originErik Johnston2019-07-261-13/+22
| |/ /
* | | Merge pull request #5743 from matrix-org/erikj/log_origin_receipts_mismatchAndrew Morgan2020-02-191-13/+22
|\ \ \ | | |/ | |/|
| * | Merge pull request #5743 from matrix-org/erikj/log_origin_receipts_mismatchErik Johnston2019-07-241-13/+22
| |\ \ | | | | | | | | Log when we receive receipt from a different origin
| | * | Log when we receive receipt from a different originErik Johnston2019-07-231-13/+22
| | |/
* | | Stop trying to fetch events with event_id=None. (#5753)Andrew Morgan2020-02-191-1/+7
|\| |
| * | Stop trying to fetch events with event_id=None. (#5753)Richard van der Hoff2019-07-241-1/+7
| | | | | | | | | | | | | | | | | | | | | `None` is not a valid event id, so queuing up a database fetch for it seems like a silly thing to do. I considered making `get_event` return `None` if `event_id is None`, but then its interaction with `allow_none` seemed uninituitive, and strong typing ftw.
* | | Replace returnValue with return (#5736)Andrew Morgan2020-02-1932-364/+330
|\| |
| * | Replace returnValue with return (#5736)Amber Brown2019-07-2332-364/+330
| |/
* | Ignore redactions of m.room.create events (#5701)Andrew Morgan2020-02-191-9/+24
|\|
| * Ignore redactions of m.room.create events (#5701)Richard van der Hoff2019-07-171-9/+24
| |
* | Return a different error from Invalid Password when a user is deactivated ↵Andrew Morgan2020-02-171-0/+9
|\| | | | | | | (#5674)
| * Return a different error from Invalid Password when a user is deactivated ↵Andrew Morgan2019-07-151-0/+9
| | | | | | | | | | (#5674) Return `This account has been deactivated` instead of `Invalid password` when a user is deactivated.
* | Merge pull request #5589 from matrix-org/erikj/admin_exfiltrate_dataAndrew Morgan2020-02-171-0/+183
|\|
| * Merge pull request #5589 from matrix-org/erikj/admin_exfiltrate_dataErik Johnston2019-07-151-0/+183
| |\ | | | | | | Add basic function to get all data for a user out of synapse
| | * pep8Erik Johnston2019-07-051-4/+0
| | |
| | * Remove FileExfiltrationWriterErik Johnston2019-07-051-63/+0
| | |
| | * Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2019-07-0513-36/+168
| | |\ | | | | | | | | | | | | erikj/admin_exfiltrate_data
| | * | Assume key existence. Update docstringsErik Johnston2019-07-051-3/+1
| | | |
| | * | Fixup from review comments.Erik Johnston2019-07-041-17/+22
| | | |
| | * | Apply comment fixups from code reviewErik Johnston2019-07-031-6/+6
| | | | | | | | | | | | Co-Authored-By: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
| | * | Add basic function to get all data for a user out of synapseErik Johnston2019-07-021-0/+247
| | | |
* | | | Implement access token expiry (#5660)Andrew Morgan2020-02-172-14/+38
|\| | |
| * | | Implement access token expiry (#5660)Richard van der Hoff2019-07-122-14/+38
| | | | | | | | | | | | | | | | Record how long an access token is valid for, and raise a soft-logout once it expires.
* | | | Inline issue_access_token (#5659)Andrew Morgan2020-02-171-7/+3
|\| | |
| * | | Inline issue_access_token (#5659)Richard van der Hoff2019-07-111-7/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | this is only used in one place, so it's clearer if we inline it and reduce the API surface. Also, fixes a buglet where we would create an access token even if we were about to block the user (we would never return the AT, so the user could never use it, but it was still created and added to the db.)
* | | | Merge pull request #5658 from matrix-org/babolivier/is-jsonAndrew Morgan2020-02-171-1/+1
|\| | |
| * | | Merge pull request #5658 from matrix-org/babolivier/is-jsonBrendan Abolivier2019-07-101-1/+1
| |\ \ \ | | | | | | | | | | Send 3PID bind requests as JSON data
| | * | | TypoBrendan Abolivier2019-07-101-1/+1
| | | | |
| | * | | Send 3PID bind requests as JSON dataBrendan Abolivier2019-07-101-1/+1
| | | | |
* | | | | Remove access-token support from RegistrationStore.register (#5642)Andrew Morgan2020-02-171-1/+1
|\| | | |
| * | | | Remove access-token support from RegistrationStore.register (#5642)Richard van der Hoff2019-07-101-1/+1
| |/ / / | | | | | | | | | | | | | | | | The 'token' param is no longer used anywhere except the tests, so let's kill that off too.
* | | | Merge pull request #5638 from matrix-org/babolivier/invite-jsonAndrew Morgan2020-02-171-4/+24
|\| | |
| * | | Merge pull request #5638 from matrix-org/babolivier/invite-jsonBrendan Abolivier2019-07-091-4/+18
| |\ \ \ | | | | | | | | | | Use JSON when querying the IS's /store-invite endpoint
| | * \ \ Merge branch 'develop' into babolivier/invite-jsonBrendan Abolivier2019-07-0818-196/+251
| | |\ \ \
| | * | | | LintBrendan Abolivier2019-07-081-1/+2
| | | | | |
| | * | | | Use application/json when querying the IS's /store-invite endpointBrendan Abolivier2019-07-081-4/+17
| | | | | |
* | | | | | remove unused and unnecessary check for FederationDeniedError (#5645)Andrew Morgan2020-02-171-4/+1
|\| | | | |
| * | | | | remove unused and unnecessary check for FederationDeniedError (#5645)Hubert Chathi2019-07-091-4/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | FederationDeniedError is a subclass of SynapseError, which is a subclass of CodeMessageException, so if e is a FederationDeniedError, then this check for FederationDeniedError will never be reached since it will be caught by the check for CodeMessageException above. The check for CodeMessageException does almost the same thing as this check (since FederationDeniedError initialises with code=403 and msg="Federation denied with %s."), so may as well just keep allowing it to handle this case.
* | | | | | Merge pull request #5644 from matrix-org/babolivier/profile-allow-selfAndrew Morgan2020-02-171-0/+4
|\| | | | |
| * | | | | Merge pull request #5644 from matrix-org/babolivier/profile-allow-selfBrendan Abolivier2019-07-091-0/+4
| |\ \ \ \ \ | | | | | | | | | | | | | | Allow newly-registered users to lookup their own profiles
| | * | | | | Allow newly-registered users to lookup their own profilesBrendan Abolivier2019-07-081-0/+4
| | | |/ / / | | |/| | | | | | | | | | | | | | | When a user creates an account and the 'require_auth_for_profile_requests' config flag is set, and a client that performed the registration wants to lookup the newly-created profile, the request will be denied because the user doesn't share a room with themselves yet.
* | | | | | Remove access-token support from RegistrationHandler.register (#5641)Andrew Morgan2020-02-171-24/+3
|\| | | | |
| * | | | | Remove access-token support from RegistrationHandler.register (#5641)Richard van der Hoff2019-07-081-24/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Nothing uses this now, so we can remove the dead code, and clean up the API. Since we're changing the shape of the return value anyway, we take the opportunity to give the method a better name.
* | | | | | Better logging for auto-join. (#5643)Andrew Morgan2020-02-171-0/+7
|\| | | | |
| * | | | | Better logging for auto-join. (#5643)Richard van der Hoff2019-07-081-0/+7
| |/ / / / | | | | | | | | | | It was pretty unclear what was going on, so I've added a couple of log lines.
| * | | | Move get_or_create_user to test code (#5628)Richard van der Hoff2019-07-081-51/+0
| | | | | | | | | | | | | | | This is only used in tests, so...
* | | | | Remove support for invite_3pid_guest. (#5625)Andrew Morgan2020-02-173-81/+0
|\| | | |
| * | | | Remove support for invite_3pid_guest. (#5625)Richard van der Hoff2019-07-053-81/+0
| | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This has never been documented, and I'm not sure it's ever been used outside sytest. It's quite a lot of poorly-maintained code, so I'd like to get rid of it. For now I haven't removed the database table; I suggest we leave that for a future clearout.
* | | | Fix with isort==4.3.21 and black==19.3b0Andrew Morgan2020-02-143-6/+5
| | | |
* | | | Delete duplicate user deactivationAndrew Morgan2020-02-141-7/+0
| | | |
* | | | Fix incorrect run_in_background import statementAndrew Morgan2020-02-141-1/+1
| | | |
* | | | Move logging utilities out of the side drawer of util/ and into logging/ (#5606)Andrew Morgan2020-02-1412-35/+36
|\| | |
| * | | Move logging utilities out of the side drawer of util/ and into logging/ (#5606)Amber Brown2019-07-0412-35/+36
| | | |
* | | | Fix a number of "Starting txn from sentinel context" warnings (#5605)Andrew Morgan2020-02-141-1/+9
|\| | |
| * | | Fix a number of "Starting txn from sentinel context" warnings (#5605)Richard van der Hoff2019-07-031-1/+9
| | | | | | | | | | | | | | | | Fixes #5602, #5603
* | | | Complete the SAML2 implementation (#5422)Andrew Morgan2020-02-141-0/+123
|\| | |
| * | | Complete the SAML2 implementation (#5422)Richard van der Hoff2019-07-021-0/+123
| |\ \ \ | | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * SAML2 Improvements and redirect stuff Signed-off-by: Alexander Trost <galexrt@googlemail.com> * Code cleanups and simplifications. Also: share the saml client between redirect and response handlers. * changelog * Revert redundant changes to static js * Move all the saml stuff out to a centralised handler * Add support for tracking SAML2 sessions. This allows us to correctly handle `allow_unsolicited: False`. * update sample config * cleanups * update sample config * rename BaseSSORedirectServlet for consistency * Address review comments
| | * | Merge branch 'develop' into rav/saml2_clientRichard van der Hoff2019-07-015-26/+64
| | |\ \
| | * | | Address review commentsRichard van der Hoff2019-07-011-5/+7
| | | | |
| | * | | cleanupsRichard van der Hoff2019-06-271-1/+1
| | | | |
| | * | | Add support for tracking SAML2 sessions.Richard van der Hoff2019-06-261-2/+37
| | | | | | | | | | | | | | | | | | | | This allows us to correctly handle `allow_unsolicited: False`.
| | * | | Move all the saml stuff out to a centralised handlerRichard van der Hoff2019-06-261-0/+86
| | | |/ | | |/|
* | | | Merge pull request #5507 from matrix-org/erikj/presence_sync_tighloopAndrew Morgan2020-02-141-2/+19
|\| | |
| * | | Merge pull request #5507 from matrix-org/erikj/presence_sync_tighloopErik Johnston2019-07-011-2/+19
| |\ \ \ | | |_|/ | |/| | Fix sync tightloop bug.
| | * | Fixup commentErik Johnston2019-07-011-6/+13
| | | |
| | * | Fix sync tightloop bug.Erik Johnston2019-06-211-2/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If, for some reason, presence updates take a while to persist then it can trigger clients to tightloop calling `/sync` due to the presence handler returning updates but not advancing the stream token. Fixes #5503.
| * | | Merge pull request #5576 from matrix-org/babolivier/3pid-invite-ratelimitBrendan Abolivier2019-06-281-0/+1
| |\ \ \ | | | | | | | | | | Don't update the ratelimiter before sending a 3PID invite
| | * | | Only ratelimit when sending the emailBrendan Abolivier2019-06-281-1/+2
| | | | | | | | | | | | | | | | | | | | If we do the opposite, an event can arrive after or while sending the email and the 3PID invite event will get ratelimited.
| | * | | Don't update the ratelimiter before sending a 3PID inviteBrendan Abolivier2019-06-281-1/+1
| | | |/ | | |/| | | | | | | | | This would cause emails being sent, but Synapse responding with a 429 when creating the event. The client would then retry, and with bad timing the same scenario would happen again. Some testing I did ended up sending me 10 emails for one single invite because of this.
* | | | Added possibilty to disable local password authentication (#5092)Andrew Morgan2020-02-142-1/+4
|\| | |
| * | | Added possibilty to disable local password authentication (#5092)Daniel Hoffend2019-06-272-1/+4
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Daniel Hoffend <dh@dotlan.net>
* | | | Merge pull request #5559 from matrix-org/erikj/refactor_changed_devicesAndrew Morgan2020-02-142-25/+59
|\| | |
| * | | Review commentsErik Johnston2019-06-271-4/+4
| | | |
| * | | Refactor and comment sync device list codeErik Johnston2019-06-261-17/+53
| | | |
| * | | Rename get_users_whose_devices_changedErik Johnston2019-06-262-2/+2
| | | |
| * | | Refactor get_user_ids_changed to pull less from DBErik Johnston2019-06-262-18/+16
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a client asks for users whose devices have changed since a token we used to pull *all* users from the database since the token, which could easily be thousands of rows for old tokens. This PR changes this to only check for changes for users the client is actually interested in. Fixes #5553
* | | Prevent multiple upgrades on the same room at once (#5051)Andrew Morgan2020-02-141-51/+89
|\| |
| * | Prevent multiple upgrades on the same room at once (#5051)Andrew Morgan2019-06-251-51/+89
| | | | | | | | | | | | | | | | | | | | | Closes #4583 Does slightly less than #5045, which prevented a room from being upgraded multiple times, one after another. This PR still allows that, but just prevents two from happening at the same time. Mostly just to mitigate the fact that servers are slow and it can take a moment for the room upgrade to actually complete. We don't want people sending another request to upgrade the room when really they just thought the first didn't go through.
* | | Merge pull request #5531 from matrix-org/erikj/workers_pagination_tokenAndrew Morgan2020-02-131-3/+1
|\| |
| * | Merge pull request #5531 from matrix-org/erikj/workers_pagination_tokenErik Johnston2019-06-241-3/+1
| |\ \ | | | | | | | | Fix /messages on workers when no from param specified.
| | * | Fix /messages on workers when no from param specified.Erik Johnston2019-06-241-3/+1
| | |/ | | | | | | | | | | | | | | | | | | If no `from` param is specified we calculate and use the "current token" that inlcuded typing, presence, etc. These are unused during pagination and are not available on workers, so we simply don't calculate them.
* | | Merge pull request #5516 from matrix-org/rav/acme_key_pathAndrew Morgan2020-02-132-5/+38
|\| |
| * | Allow configuration of the path used for ACME account keys.Richard van der Hoff2019-06-242-5/+38
| | | | | | | | | | | | | | | Because sticking it in the same place as the config isn't necessarily the right thing to do.
* | | Factor acme bits out to a separate file (#5521)Andrew Morgan2020-02-132-53/+93
|\| |
| * | Factor acme bits out to a separate file (#5521)Richard van der Hoff2019-06-242-53/+93
| |/ | | | | This makes some of the conditional-import hoop-jumping easier.
* | Run Black. (#5482)Andrew Morgan2020-02-133-7/+3
|\|
| * Run Black. (#5482)Amber Brown2019-06-2035-2765/+2187
| |
| * Merge pull request #5042 from matrix-org/erikj/fix_get_missing_events_errorErik Johnston2019-06-191-9/+19
| |\ | | | | | | Handle the case of `get_missing_events` failing
* | | Dinsic Blacking with black==18.6b2Andrew Morgan2020-02-1136-2867/+2296
| | |
* | | Merge pull request #5480 from matrix-org/erikj/extremities_dummy_eventsAndrew Morgan2020-02-101-2/+5
|\| |
| * | Merge pull request #5480 from matrix-org/erikj/extremities_dummy_eventsErik Johnston2019-06-191-1/+74
| |\ \ | | | | | | | | Add experimental option to reduce extremities.
| | * | Run as background process and fix commentsErik Johnston2019-06-191-2/+5
| | | |
* | | | Add some logging to 3pid invite sig verification (#5015)Andrew Morgan2020-02-101-8/+38
|\| | |
| * | | Add some logging to 3pid invite sig verification (#5015)David Baker2019-06-181-8/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I had to add quite a lot of logging to diagnose a problem with 3pid invites - we only logged the one failure which isn't all that informative. NB. I'm not convinced the logic of this loop is right: I think it should just accept a single valid signature from a trusted source rather than fail if *any* signature is invalid. Also it should probably not skip the rest of middle loop if a check fails? However, I'm deliberately not changing the logic here.
* | | | Fix loglineAndrew Morgan2020-02-101-1/+1
|\ \ \ \ | | |_|/ | |/| |
| * | | Fix loglineErik Johnston2019-06-181-1/+1
| | | |
* | | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Andrew Morgan2020-02-101-9/+19
|\| | | | | | | | | | | | | | | erikj/fix_get_missing_events_error
| * | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2019-06-1820-323/+1372
| |\| | | | | | | | | | | | | | erikj/fix_get_missing_events_error
| * | | Handle the case of `get_missing_events` failingErik Johnston2019-04-101-9/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently if a call to `/get_missing_events` fails we log an exception and stop processing the top level event we received over federation. Instead let's try and handle it sensibly given it is a somewhat expected failure mode.
* | | | Add experimental option to reduce extremities.Andrew Morgan2020-02-101-1/+71
|\ \ \ \ | | |_|/ | |/| |
| * | | Add experimental option to reduce extremities.Erik Johnston2019-06-181-1/+71
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds new config option `cleanup_extremities_with_dummy_events` which periodically sends dummy events to rooms with more than 10 extremities. THIS IS REALLY EXPERIMENTAL.
* | | | Merge pull request #5477 from matrix-org/babolivier/third_party_rules_3pidAndrew Morgan2020-02-101-0/+9
|\ \ \ \ | | |_|/ | |/| |
| * | | Add third party rules hook for 3PID invitesBrendan Abolivier2019-06-171-0/+10
| | | |
| * | | Add third party rules hook into create roomErik Johnston2019-06-171-1/+24
| |/ /
* | | Merge pull request #5385 from matrix-org/erikj/reduce_http_exceptionsAndrew Morgan2020-02-102-16/+17
|\| |
| * | Merge pull request #5385 from matrix-org/erikj/reduce_http_exceptionsErik Johnston2019-06-172-16/+17
| |\ \ | | | | | | | | Handle HttpResponseException when using federation client.
| | * | Handle HttpResponseException when using federation client.Erik Johnston2019-06-072-16/+17
| | | | | | | | | | | | | | | | Otherwise we just log exceptions everywhere.
| * | | Merge pull request #5464 from matrix-org/erikj/3pid_remote_invite_stateErik Johnston2019-06-171-6/+0
| |\ \ \ | | | | | | | | | | Fix 3PID invite room state over federation.
| * \ \ \ Merge pull request #5440 from matrix-org/babolivier/third_party_event_rulesBrendan Abolivier2019-06-142-4/+78
| |\ \ \ \ | | | | | | | | | | | | Allow server admins to define implementations of extra rules for allowing or denying incoming events
* | \ \ \ \ Merge remote-tracking branch 'dinsic/dinsic' into dinsic-release-v1.1.0Andrew Morgan2020-02-107-14/+134
|\ \ \ \ \ \
| * | | | | | Add the ability to restrict max avatar filesize and content-type (#19)Andrew Morgan2019-12-121-0/+46
| | | | | | |
| * | | | | | Add limit_profile_requests_to_known_users option (#18)Andrew Morgan2019-12-051-2/+2
| | | | | | |
| * | | | | | Discard retention policies when retrieving stateBrendan Abolivier2019-11-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Purge jobs don't delete the latest event in a room in order to keep the forward extremity and not break the room. On the other hand, get_state_events, when given an at_token argument calls filter_events_for_client to know if the user can see the event that matches that (sync) token. That function uses the retention policies of the events it's given to filter out those that are too old from a client's view. Some clients, such as Riot, when loading a room, request the list of members for the latest sync token it knows about, and get confused to the point of refusing to send any message if the server tells it that it can't get that information. This can happen very easily with the message retention feature turned on and a room with low activity so that the last event sent becomes too old according to the room's retention policy. An easy and clean fix for that issue is to discard the room's retention policies when retrieving state.
| * | | | | | Hide expired users from user directory, optionally show on renewal (#13)Andrew Morgan2019-11-141-0/+32
| | | | | | |
| * | | | | | Create configurable ratelimiter for 3pid invites (#11)Andrew Morgan2019-11-121-8/+8
| | | | | | |
| * | | | | | Support for routing outbound HTTP requests via a proxy (#6239)Richard van der Hoff2019-11-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The `http_proxy` and `HTTPS_PROXY` env vars can be set to a `host[:port]` value which should point to a proxy. The address of the proxy should be excluded from IP blacklists such as the `url_preview_ip_range_blacklist`. The proxy will then be used for * push * url previews * phone-home stats * recaptcha validation * CAS auth validation It will *not* be used for: * Application Services * Identity servers * Outbound federation * In worker configurations, connections from workers to masters Fixes #4198.
| * | | | | | TypoBrendan Abolivier2019-10-041-1/+1
| | | | | | |
| * | | | | | LintBrendan Abolivier2019-10-041-3/+1
| | | | | | |
| * | | | | | Incorporate reviewBrendan Abolivier2019-10-041-14/+8
| | | | | | |
| * | | | | | Add test caseBrendan Abolivier2019-10-041-1/+1
| | | | | | |
| * | | | | | LintBrendan Abolivier2019-10-041-1/+3
| | | | | | |
| * | | | | | Don't 500 code when trying to exchange a revoked 3PID inviteBrendan Abolivier2019-10-041-2/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While this is not documented in the spec (but should be), Riot (and other clients) revoke 3PID invites by sending a m.room.third_party_invite event with an empty ({}) content to the room's state. When the invited 3PID gets associated with a MXID, the identity server (which doesn't know about revocations) sends down to the MXID's homeserver all of the undelivered invites it has for this 3PID. The homeserver then tries to talk to the inviting homeserver in order to exchange these invite for m.room.member events. When one of the invite is revoked, the inviting homeserver responds with a 500 error because it tries to extract a 'display_name' property from the content, which is empty. This might cause the invited server to consider that the server is down and not try to exchange other, valid invites (or at least delay it). This fix handles the case of revoked invites by avoiding trying to fetch a 'display_name' from the original invite's content, and letting the m.room.member event fail the auth rules (because, since the original invite's content is empty, it doesn't have public keys), which results in sending a 403 with the correct error message to the invited server.
| * | | | | | s/return/defer.returnValue/Brendan Abolivier2019-09-271-1/+1
| | | | | | |
| * | | | | | Incorporate reviewBrendan Abolivier2019-09-271-4/+2
| | | | | | |
| * | | | | | Update synapse/handlers/deactivate_account.pyBrendan Abolivier2019-09-271-1/+3
| | | | | | | | | | | | | | | | | | | | | Co-Authored-By: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com>
| * | | | | | Update synapse/handlers/deactivate_account.pyBrendan Abolivier2019-09-271-0/+4
| | | | | | | | | | | | | | | | | | | | | Co-Authored-By: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com>
| * | | | | | LintBrendan Abolivier2019-09-271-1/+34
| | | | | | |
* | | | | | | Don't send renewal emails to deactivated usersAndrew Morgan2020-02-101-0/+4
|\ \ \ \ \ \ \ | | |/ / / / / | |/| | | | |
| * | | | | | Don't send renewal emails to deactivated usersBrendan Abolivier2019-06-142-0/+9
| | | | | | |