Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Log the args that we have on UI auth completion | David Baker | 2016-11-24 | 1 | -1/+7 |
| | | | | | This will be super helpful for debugging if we have more registration woes. | ||||
* | Shuffle receipt handler around so that worker apps don't need to load it | Erik Johnston | 2016-11-23 | 3 | -6/+4 |
| | |||||
* | Merge branch 'develop' of github.com:matrix-org/synapse into ↵ | Erik Johnston | 2016-11-23 | 1 | -9/+22 |
|\ | | | | | | | erikj/split_out_fed_txn | ||||
| * | Return early on /sync code paths if a '*' filter is used | Kegan Dougal | 2016-11-22 | 1 | -9/+22 |
| | | | | | | | | | | | | | | | | This is currently very conservative in that it only does this if there is no `since` token. This limits the risk to clients likely to be doing one-off syncs (like bridges), but does mean that normal human clients won't benefit from the time savings here. If the savings are large enough, I would consider generalising this to just check the filter. | ||||
* | | Remove explicit calls to send_pdu | Erik Johnston | 2016-11-21 | 1 | -53/+0 |
| | | |||||
* | | Handle sending events and device messages over federation | Erik Johnston | 2016-11-17 | 1 | -12/+1 |
| | | |||||
* | | Use new federation_sender DI | Erik Johnston | 2016-11-16 | 5 | -14/+16 |
|/ | |||||
* | Use external ldap auth pacakge | Erik Johnston | 2016-11-15 | 1 | -0/+2 |
| | |||||
* | Sample correctly | Erik Johnston | 2016-11-08 | 1 | -1/+3 |
| | |||||
* | Limit the number of prev_events of new events | Erik Johnston | 2016-11-08 | 1 | -0/+13 |
| | |||||
* | Don't error on non-ascii passwords | David Baker | 2016-11-03 | 1 | -1/+1 |
| | |||||
* | Fix infinite typing bug | Erik Johnston | 2016-10-24 | 1 | -2/+10 |
| | | | | | | | There's a bug somewhere that causes typing notifications to not be timed out properly. By adding a paranoia timer and using correct inequalities notifications should stop being stuck, even if it the root cause hasn't been fixed. | ||||
* | Fix incredubly slow back pagination query | Erik Johnston | 2016-10-24 | 2 | -4/+7 |
| | | | | | | | If a client didn't specify a from token when paginating backwards synapse would attempt to query the (global) maximum topological token. This a) doesn't make much sense since they're room specific and b) there are no indices that lets postgres do this efficiently. | ||||
* | Merge pull request #1175 from ↵ | Luke Barnard | 2016-10-20 | 1 | -0/+6 |
|\ | | | | | | | | | matrix-org/luke/feature-configurable-as-rate-limiting Allow Configurable Rate Limiting Per AS | ||||
| * | as_user->app_service, less redundant comments, better positioned comments | Luke Barnard | 2016-10-20 | 1 | -6/+3 |
| | | |||||
| * | Use real AS object by passing it through the requester | Luke Barnard | 2016-10-20 | 1 | -8/+3 |
| | | | | | | | | This means synapse does not have to check if the AS is interested, but instead it effectively re-uses what it already knew about the requesting user | ||||
| * | Allow Configurable Rate Limiting Per AS | Luke Barnard | 2016-10-18 | 1 | -0/+14 |
| | | | | | | | | This adds a flag loaded from the registration file of an AS that will determine whether or not its users are rate limited (by ratelimit in _base.py). Needed for IRC bridge reasons - see https://github.com/matrix-org/matrix-appservice-irc/issues/240. | ||||
* | | Merge pull request #1176 from matrix-org/erikj/eager_ratelimit_check | Erik Johnston | 2016-10-19 | 1 | -1/+16 |
|\ \ | | | | | | | Check whether to ratelimit sooner to avoid work | ||||
| * | | Comment | Erik Johnston | 2016-10-19 | 1 | -0/+3 |
| | | | |||||
| * | | Check whether to ratelimit sooner to avoid work | Erik Johnston | 2016-10-19 | 1 | -1/+13 |
| |/ | |||||
* / | Convert emails to lowercase when storing | David Baker | 2016-10-19 | 1 | -0/+12 |
|/ | | | | And db migration sql to convert existing addresses. | ||||
* | Merge pull request #1155 from matrix-org/erikj/pluggable_pwd_auth | Erik Johnston | 2016-10-12 | 1 | -295/+39 |
|\ | | | | | Implement pluggable password auth | ||||
| * | Implement pluggable password auth | Erik Johnston | 2016-10-03 | 1 | -295/+39 |
| | | | | | | | | | | | | Allows delegating the password auth to an external module. This also moves the LDAP auth to using this system, allowing it to be removed from the synapse tree entirely in the future. | ||||
* | | Merge pull request #1166 from matrix-org/rav/grandfather_broken_riot_signup | Richard van der Hoff | 2016-10-11 | 1 | -3/+14 |
|\ \ | | | | | | | Work around email-spamming Riot bug | ||||
| * | | Work around email-spamming Riot bug | Richard van der Hoff | 2016-10-11 | 1 | -3/+14 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5d9546f9 introduced a change to synapse behaviour, in that failures in the interactive-auth process would return the flows and params data as well as an error code (as specced in https://github.com/matrix-org/matrix-doc/pull/397). That change exposed a bug in Riot which would make it request a new validation token (and send a new email) each time it got a 401 with a `flows` parameter (see https://github.com/vector-im/vector-web/issues/2447 and the fix at https://github.com/matrix-org/matrix-react-sdk/pull/510). To preserve compatibility with broken versions of Riot, grandfather in the old behaviour for the email validation stage. | ||||
* | | | Merge pull request #1157 from Rugvip/nolimit | Erik Johnston | 2016-10-11 | 7 | -32/+30 |
|\ \ \ | |/ / |/| | | Remove rate limiting from app service senders and fix get_or_create_user requester | ||||
| * | | rest/client/v1/register: use the correct requester in createUser | Patrik Oldsberg | 2016-10-06 | 1 | -4/+2 |
| | | | | | | | | | | | | Signed-off-by: Patrik Oldsberg <patrik.oldsberg@ericsson.com> | ||||
| * | | handlers/profile: added admin override for set_displayname and set_avatar_url | Patrik Oldsberg | 2016-10-06 | 1 | -4/+4 |
| | | | | | | | | | | | | Signed-off-by: Patrik Oldsberg <patrik.oldsberg@ericsson.com> | ||||
| * | | handers: do not ratelimit app service senders | Patrik Oldsberg | 2016-10-06 | 1 | -1/+7 |
| | | | | | | | | | | | | Signed-off-by: Patrik Oldsberg <patrik.oldsberg@ericsson.com> | ||||
| * | | storage/appservice: make appservice methods only relying on the cache ↵ | Patrik Oldsberg | 2016-10-06 | 5 | -23/+17 |
| |/ | | | | | | | synchronous | ||||
* | | Merge pull request #1160 from matrix-org/rav/401_on_password_fail | Richard van der Hoff | 2016-10-07 | 1 | -32/+52 |
|\ \ | |/ |/| | Interactive Auth: Return 401 from for incorrect password | ||||
| * | Interactive Auth: Return 401 from for incorrect password | Richard van der Hoff | 2016-10-07 | 1 | -32/+52 |
| | | | | | | | | | | | | | | | | | | This requires a bit of fettling, because I want to return a helpful error message too but we don't want to distinguish between unknown user and invalid password. To avoid hardcoding the error message into 15 places in the code, I've had to refactor a few methods to return None instead of throwing. Fixes https://matrix.org/jira/browse/SYN-744 | ||||
* | | Restructure ldap authentication | Martin Weinelt | 2016-09-29 | 1 | -87/+192 |
|/ | | | | | | | | - properly parse return values of ldap bind() calls - externalize authentication methods - change control flow to be more error-resilient - unbind ldap connections in many places - improve log messages and loglevels | ||||
* | Move FEDERATION_PING_INTERVAL timer. Update log line | Erik Johnston | 2016-09-23 | 1 | -8/+10 |
| | |||||
* | Time out typing over federation | Erik Johnston | 2016-09-23 | 1 | -70/+105 |
| | |||||
* | Merge pull request #1136 from matrix-org/erikj/fix_signed_3pid | Erik Johnston | 2016-09-22 | 1 | -6/+9 |
|\ | | | | | Allow invites via 3pid to bypass sender sig check | ||||
| * | Add comments | Erik Johnston | 2016-09-22 | 1 | -0/+3 |
| | | |||||
| * | Allow invites via 3pid to bypass sender sig check | Erik Johnston | 2016-09-22 | 1 | -6/+6 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a server sends a third party invite another server may be the one that the inviting user registers with. In this case it is that remote server that will issue an actual invitation, and wants to do it "in the name of" the original invitee. However, the new proper invite will not be signed by the original server, and thus other servers would reject the invite if it was seen as coming from the original user. To fix this, a special case has been added to the auth rules whereby another server can send an invite "in the name of" another server's user, so long as that user had previously issued a third party invite that is now being accepted. | ||||
* | | Merge pull request #1132 from matrix-org/erikj/initial_sync_split | Erik Johnston | 2016-09-22 | 2 | -378/+446 |
|\ \ | |/ |/| | Support /initialSync in synchrotron worker | ||||
| * | Support /initialSync in synchrotron worker | Erik Johnston | 2016-09-21 | 2 | -378/+446 |
| | | |||||
* | | Add total_room_count_estimate to /publicRooms | Erik Johnston | 2016-09-21 | 1 | -0/+3 |
|/ | |||||
* | Merge pull request #1130 from matrix-org/erikj/fix_pubroom_pag | Erik Johnston | 2016-09-19 | 1 | -12/+25 |
|\ | | | | | Handle fact that _generate_room_entry may not return a room entry | ||||
| * | PEP8 | Erik Johnston | 2016-09-17 | 1 | -1/+1 |
| | | |||||
| * | Handle fact that _generate_room_entry may not return a room entry | Erik Johnston | 2016-09-17 | 1 | -12/+25 |
| | | |||||
* | | Merge pull request #1129 from matrix-org/erikj/fix_pubroom_pag | Erik Johnston | 2016-09-17 | 1 | -110/+123 |
|\| | | | | | Fix and clean up publicRooms pagination | ||||
| * | Spelling | Erik Johnston | 2016-09-17 | 1 | -1/+1 |
| | | |||||
| * | Fix and clean up publicRooms pagination | Erik Johnston | 2016-09-17 | 1 | -110/+123 |
| | | |||||
* | | Make public room search case insensitive | David Baker | 2016-09-16 | 1 | -4/+4 |
|/ | |||||
* | Comment | Erik Johnston | 2016-09-16 | 1 | -0/+2 |
| | |||||
* | Add remote reoom cache | Erik Johnston | 2016-09-16 | 1 | -2/+23 |
| | |||||
* | Support filtering remote room lists | Erik Johnston | 2016-09-16 | 1 | -3/+9 |
| | |||||
* | Filter remote rooms lists locally | Erik Johnston | 2016-09-16 | 1 | -10/+24 |
| | |||||
* | Don't cache searched in /publicRooms | Erik Johnston | 2016-09-16 | 1 | -1/+5 |
| | |||||
* | Add very basic filter API to /publicRooms | Erik Johnston | 2016-09-15 | 1 | -5/+18 |
| | |||||
* | Change the way we calculate new_limit in /publicRooms and add POST API | Erik Johnston | 2016-09-15 | 1 | -15/+33 |
| | |||||
* | Merge pull request #1121 from matrix-org/erikj/public_room_paginate | Erik Johnston | 2016-09-15 | 1 | -84/+196 |
|\ | | | | | Add pagination support to publicRooms | ||||
| * | Base public room list off of public_rooms stream | Erik Johnston | 2016-09-15 | 1 | -7/+27 |
| | | |||||
| * | Pass since/from parameters over federation | Erik Johnston | 2016-09-15 | 1 | -29/+26 |
| | | |||||
| * | Allow paginating both forwards and backwards | Erik Johnston | 2016-09-15 | 1 | -21/+50 |
| | | |||||
| * | Remove support for aggregate room lists | Erik Johnston | 2016-09-15 | 1 | -55/+0 |
| | | |||||
| * | Accept optional token to public room list | Erik Johnston | 2016-09-15 | 1 | -7/+75 |
| | | |||||
| * | Calculate the public room list from a stream_ordering | Erik Johnston | 2016-09-14 | 1 | -3/+40 |
| | | |||||
| * | Refactor public rooms to not pull out the full state for each room | Erik Johnston | 2016-09-14 | 1 | -14/+30 |
| | | |||||
* | | Merge pull request #1117 from matrix-org/erikj/fix_state | Erik Johnston | 2016-09-14 | 1 | -0/+4 |
|\ \ | |/ |/| | Ensure we don't mutate state cache entries | ||||
| * | Ensure we don't mutate state cache entries | Erik Johnston | 2016-09-14 | 1 | -0/+4 |
| | | |||||
* | | Move RoomListHandler into a separate file | Erik Johnston | 2016-09-14 | 2 | -158/+185 |
|/ | |||||
* | Merge pull request #1111 from matrix-org/matthew/device-ids | Matthew Hodgson | 2016-09-14 | 1 | -1/+1 |
|\ | | | | | make device IDs more useful for human disambiguation | ||||
| * | make device IDs more useful for human disambiguation | Matthew Hodgson | 2016-09-13 | 1 | -1/+1 |
| | | |||||
* | | Merge pull request #1116 from matrix-org/paul/tiny-fixes | Paul Evans | 2016-09-13 | 1 | -2/+2 |
|\ \ | | | | | | | Fix typo "persiting" | ||||
| * | | Fix typo "persiting" | Paul "LeoNerd" Evans | 2016-09-13 | 1 | -2/+2 |
| | | | |||||
* | | | Limit how often we ask for keys from dead servers | Mark Haines | 2016-09-13 | 1 | -11/+30 |
|/ / | |||||
* | | Move the E2E key handling into the e2e handler | Mark Haines | 2016-09-13 | 1 | -3/+102 |
| | | |||||
* | | Merge pull request #1110 from matrix-org/markjh/e2e_timeout | Mark Haines | 2016-09-13 | 1 | -21/+43 |
|\ \ | | | | | | | Add a timeout parameter for end2end key queries. | ||||
| * | | Add a timeout parameter for end2end key queries. | Mark Haines | 2016-09-12 | 1 | -21/+43 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a timeout parameter for controlling how long synapse will wait for responses from remote servers. For servers that fail include how they failed to make it easier to debug. Fetch keys from different servers in parallel rather than in series. Set the default timeout to 10s. | ||||
* | | | Add is_direct param to /createRoom | Erik Johnston | 2016-09-12 | 1 | -0/+6 |
|/ / | |||||
* | | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/batch_edus | Erik Johnston | 2016-09-09 | 1 | -2/+31 |
|\| | |||||
| * | Merge pull request #1091 from matrix-org/paul/third-party-lookup | Paul Evans | 2016-09-09 | 1 | -2/+31 |
| |\ | | | | | | | Improvements to 3PE lookup API | ||||
| | * | Reject malformed 3PE query metadata results earlier in AS API handling code | Paul "LeoNerd" Evans | 2016-09-09 | 1 | -9/+5 |
| | | | |||||
| | * | Minor fixes from PR comments | Paul "LeoNerd" Evans | 2016-09-09 | 1 | -2/+2 |
| | | | |||||
| | * | Efficiency fix for lookups of a single protocol | Paul "LeoNerd" Evans | 2016-09-09 | 1 | -1/+4 |
| | | | |||||
| | * | Don't corrupt shared cache on subsequent protocol requests | Paul "LeoNerd" Evans | 2016-09-09 | 1 | -0/+2 |
| | | | |||||
| | * | Collect up all the "instances" lists of individual AS protocol results into ↵ | Paul "LeoNerd" Evans | 2016-09-08 | 1 | -1/+29 |
| | | | | | | | | | | | | one combined answer to the client | ||||
* | | | Clobber EDUs in send queue | Erik Johnston | 2016-09-09 | 3 | -15/+7 |
|/ / | |||||
* / | Deduplicate presence in _update_states | Erik Johnston | 2016-09-09 | 1 | -0/+6 |
|/ | |||||
* | Merge pull request #1082 from matrix-org/erikj/remote_public_rooms | Erik Johnston | 2016-09-08 | 1 | -0/+10 |
|\ | | | | | Add server param to /publicRooms | ||||
| * | Add server param to /publicRooms | Erik Johnston | 2016-09-08 | 1 | -0/+10 |
| | | |||||
* | | Check the user_id for presence/typing matches origin | Erik Johnston | 2016-09-08 | 2 | -1/+15 |
| | | |||||
* | | Merge branch 'develop' into markjh/direct_to_device_federation | Mark Haines | 2016-09-08 | 3 | -54/+35 |
|\| | |||||
| * | Record counts of state changes | Erik Johnston | 2016-09-06 | 1 | -0/+4 |
| | | |||||
| * | Short circuit if presence is the same | Erik Johnston | 2016-09-06 | 1 | -0/+3 |
| | | |||||
| * | Fiddle should_notify to better report stats | Erik Johnston | 2016-09-06 | 1 | -12/+7 |
| | | |||||
| * | Merge pull request #1070 from matrix-org/erikj/presence_stats | Erik Johnston | 2016-09-05 | 1 | -0/+8 |
| |\ | | | | | | | Record why we have chosen to notify | ||||
| | * | Record why we have chosen to notify | Erik Johnston | 2016-09-05 | 1 | -0/+8 |
| | | | |||||
| * | | Use get_joined_users_from_context instead of manually looking up hosts | Erik Johnston | 2016-09-05 | 2 | -46/+17 |
| |/ | |||||
* | | Add a new method to enqueue the device messages rather than sending a dummy EDU | Mark Haines | 2016-09-07 | 1 | -7/+3 |
| | | |||||
* | | Send device messages over federation | Mark Haines | 2016-09-06 | 1 | -0/+121 |
|/ | |||||
* | Merge pull request #1067 from matrix-org/markjh/idempotent | Mark Haines | 2016-09-05 | 1 | -0/+6 |
|\ | | | | | Fix membership changes to be idempotent | ||||
| * | Fix membership changes to be idempotent | Mark Haines | 2016-09-02 | 1 | -0/+6 |
| | | |||||
* | | Merge pull request #1066 from matrix-org/markjh/direct_to_device_lowerbound | Mark Haines | 2016-09-02 | 1 | -1/+1 |
|\ \ | | | | | | | Only return new device messages in /sync | ||||
| * | | Only return new device messages in /sync | Mark Haines | 2016-09-02 | 1 | -1/+1 |
| |/ | |||||
* | | Merge pull request #1064 from matrix-org/erikj/on_receive_check | Erik Johnston | 2016-09-02 | 1 | -6/+18 |
|\ \ | | | | | | | Only check if host is in room if we have state and auth_chain | ||||
| * | | Comment on when auth chain and state are None | Erik Johnston | 2016-09-02 | 1 | -0/+3 |
| | | | |||||
| * | | Comment | Erik Johnston | 2016-09-02 | 1 | -0/+3 |
| | | | |||||
| * | | Only check if host is in room if we have state and auth_chain | Erik Johnston | 2016-09-02 | 1 | -6/+12 |
| |/ | |||||
* | | Docstrings | Erik Johnston | 2016-09-02 | 1 | -0/+4 |
| | | |||||
* | | Only pull out IDs from DB for /state_ids/ request | Erik Johnston | 2016-09-02 | 1 | -0/+26 |
|/ | |||||
* | Fix typo in log line | Erik Johnston | 2016-09-01 | 1 | -1/+1 |
| | |||||
* | Correctly handle the difference between prev and current state | Erik Johnston | 2016-08-31 | 3 | -17/+30 |
| | |||||
* | Merge pull request #1055 from matrix-org/erikj/occaisonally_persist | Erik Johnston | 2016-08-30 | 1 | -0/+28 |
|\ | | | | | Occaisonally persist unpersisted presence updates | ||||
| * | Check correct variable | Erik Johnston | 2016-08-30 | 1 | -1/+1 |
| | | |||||
| * | Occaisonally persist unpersisted presence updates | Erik Johnston | 2016-08-30 | 1 | -0/+28 |
| | | |||||
* | | Don't notify for online -> online transitions. | Erik Johnston | 2016-08-30 | 1 | -1/+6 |
|/ | | | | | Specifically, if currently_active remains true then we should not notify if only the last active time changes. | ||||
* | Comment about message deletion | Erik Johnston | 2016-08-30 | 1 | -0/+3 |
| | |||||
* | Fix check | Erik Johnston | 2016-08-30 | 1 | -2/+1 |
| | |||||
* | Noop get_new_messages_for_device if token hasn't changed | Erik Johnston | 2016-08-30 | 1 | -9/+12 |
| | |||||
* | Merge pull request #1049 from matrix-org/erikj/presence_users_in_room | Erik Johnston | 2016-08-30 | 6 | -13/+28 |
|\ | | | | | Use state handler instead of get_users_in_room/get_joined_hosts | ||||
| * | Use state handler instead of get_users_in_room/get_joined_hosts | Erik Johnston | 2016-08-26 | 6 | -13/+28 |
| | | |||||
* | | Merge remote-tracking branch 'origin/develop' into markjh/direct_to_device | Mark Haines | 2016-08-26 | 5 | -167/+309 |
|\| | |||||
| * | Measure _filter_events_for_server | Erik Johnston | 2016-08-26 | 1 | -0/+2 |
| | | |||||
| * | Don't pull out full state for _filter_events_for_server | Erik Johnston | 2016-08-26 | 1 | -1/+25 |
| | | |||||
| * | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/state_ids | Erik Johnston | 2016-08-26 | 2 | -1/+13 |
| |\ | |||||
| | * | Merge pull request #1043 from matrix-org/erikj/backfill_fix | Erik Johnston | 2016-08-26 | 1 | -1/+3 |
| | |\ | | | | | | | | | Fix None check in backfill | ||||
| | | * | Fix None check in backfill | Erik Johnston | 2016-08-25 | 1 | -1/+3 |
| | | | | |||||
| * | | | Make sync not pull out full state | Erik Johnston | 2016-08-25 | 1 | -34/+41 |
| | | | | |||||
| * | | | Replace context.current_state with context.current_state_ids | Erik Johnston | 2016-08-25 | 4 | -131/+226 |
| | | | | |||||
| * | | | Pull out event ids rather than full events for state | Erik Johnston | 2016-08-25 | 1 | -0/+12 |
| | |/ | |/| | |||||
* | | | Merge branch 'develop' into markjh/direct_to_device | Mark Haines | 2016-08-25 | 4 | -36/+57 |
|\ \ \ | | |/ | |/| | |||||
| * | | Merge pull request #1041 from matrix-org/paul/third-party-lookup | Paul Evans | 2016-08-25 | 1 | -0/+10 |
| |\ \ | | |/ | |/| | Extend 3PE lookup APIs for metadata query | ||||
| | * | Don't need toplevel cache on 3PE lookup metadata any more | Paul "LeoNerd" Evans | 2016-08-25 | 1 | -8/+0 |
| | | | |||||
| | * | Actually query over AS API for 3PE lookup metadata | Paul "LeoNerd" Evans | 2016-08-25 | 1 | -13/+1 |
| | | | |||||
| | * | Move static knowledge of protocol metadata into AS handler; cache the result | Paul "LeoNerd" Evans | 2016-08-24 | 1 | -2/+24 |
| | | | |||||
| | * | Initial hack at the 3PN protocols metadata lookup API | Paul "LeoNerd" Evans | 2016-08-24 | 1 | -0/+8 |
| | | | |||||
| * | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵ | Erik Johnston | 2016-08-24 | 1 | -2/+2 |
| |\| | | | | | | | | | | erikj/preserve_log_contexts | ||||
| * | | Preserve some logcontexts | Erik Johnston | 2016-08-24 | 4 | -36/+47 |
| | | | |||||
* | | | Add store-and-forward direct-to-device messaging | Mark Haines | 2016-08-25 | 1 | -1/+42 |
| |/ |/| | |||||
* | | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/pagination | Erik Johnston | 2016-08-24 | 1 | -2/+12 |
|\| | |||||
| * | Pass through user-supplied content in /join/$room_id | Kegan Dougal | 2016-08-23 | 1 | -2/+12 |
| | | | | | | | | | | | | | | It was always intended to allow custom keys on the join event, but this has at some point been lost. Restore it. If the user specifies keys like "avatar_url" then they will be clobbered. | ||||
* | | Add None checks to backfill | Erik Johnston | 2016-08-24 | 1 | -2/+2 |
|/ | |||||
* | defer.returnValue must not be called within Measure | Erik Johnston | 2016-08-19 | 1 | -7/+7 |
| | |||||
* | Merge pull request #1026 from matrix-org/paul/thirdpartylookup | Paul Evans | 2016-08-18 | 1 | -0/+24 |
|\ | | | | | 3rd party entity lookup | ||||
| * | Move validation logic for AS 3PE query response into ApplicationServiceApi ↵ | Paul "LeoNerd" Evans | 2016-08-18 | 1 | -44/+2 |
| | | | | | | | | class, to keep the handler logic neater | ||||
| * | More warnings about invalid results from AS 3PE query | Paul "LeoNerd" Evans | 2016-08-18 | 1 | -2/+7 |
| | | |||||
| * | Avoid so much copypasta between 3PU and 3PL query by unifying around a ↵ | Paul "LeoNerd" Evans | 2016-08-18 | 1 | -26/+9 |
| | | | | | | | | ThirdPartyEntityKind enumeration | ||||
| * | Minor syntax neatenings | Paul "LeoNerd" Evans | 2016-08-18 | 1 | -14/+8 |
| | | |||||
| * | Appease pep8 | Paul "LeoNerd" Evans | 2016-08-18 | 1 | -0/+2 |
| | | |||||
| * | Copypasta the 3PU support code to also do 3PL | Paul "LeoNerd" Evans | 2016-08-18 | 1 | -3/+30 |
| | | |||||
| * | Log a warning if an AS yields an invalid 3PU lookup result | Paul "LeoNerd" Evans | 2016-08-18 | 1 | -1/+6 |
| | | |||||
| * | Scattergather the call out to ASes; validate received results | Paul "LeoNerd" Evans | 2016-08-18 | 1 | -7/+34 |
| | | |||||
| * | Filter 3PU lookups by only ASes that declare knowledge of that protocol | Paul "LeoNerd" Evans | 2016-08-18 | 1 | -2/+4 |
| | | |||||
| * | Merge remote-tracking branch 'origin/develop' into paul/thirdpartylookup | Paul "LeoNerd" Evans | 2016-08-18 | 5 | -62/+82 |
| |\ | |||||
| * | | Extend individual list results into the main return list, don't append | Paul "LeoNerd" Evans | 2016-08-18 | 1 | -1/+1 |
| | | | |||||
| * | | Thread 3PU lookup through as far as the AS API object; which currently noöps it | Paul "LeoNerd" Evans | 2016-08-17 | 1 | -0/+21 |
| | | | |||||
* | | | Add appservice worker | Erik Johnston | 2016-08-18 | 1 | -38/+51 |
| |/ |/| | |||||
* | | Make AppserviceHandler stream events from database | Erik Johnston | 2016-08-18 | 1 | -21/+44 |
| | | | | | | | | | | | | | | | | | | This is for two reasons: 1. Suppresses duplicates correctly, as the notifier doesn't do any duplicate suppression. 2. Makes it easier to connect the AppserviceHandler to the replication stream. | ||||
* | | Make notify_interested_services faster | Erik Johnston | 2016-08-17 | 1 | -23/+8 |
| | | |||||
* | | Measure notify_interested_services | Erik Johnston | 2016-08-17 | 1 | -19/+22 |
| | | |||||
* | | Merge pull request #1012 from matrix-org/erikj/limit_backfill_uri | Erik Johnston | 2016-08-16 | 1 | -4/+5 |
|\ \ | | | | | | | Limit number of extremeties in backfill request | ||||
| * | | Limit number of extremeties in backfill request | Erik Johnston | 2016-08-16 | 1 | -4/+5 |
| | | | | | | | | | | | | | | | This works around a bug where if we make a backfill request with too many extremeties it causes the request URI to be too long. | ||||
* | | | Refactor user_delete_access_tokens. Invalidate get_user_by_access_token to ↵ | Erik Johnston | 2016-08-15 | 1 | -3/+3 |
|/ / | | | | | | | slaves. | ||||
* | | Merge pull request #1009 from matrix-org/erikj/event_split | Erik Johnston | 2016-08-15 | 2 | -11/+19 |
|\ \ | |/ |/| | Split out /events to synchrotron | ||||
| * | Make synchrotron accept /events | Erik Johnston | 2016-08-12 | 2 | -11/+19 |
| | | |||||
* | | Log the value which is observed in the first place. | Daniel Ehlers | 2016-08-14 | 1 | -1/+1 |
| | | | | | | | | | | | | | | | | The name 'result' is of bool type and has no len property, resulting in a TypeError. Futhermore in the flow control conn.response is observed and hence should be reported. Signed-off-by: Daniel Ehlers <sargon@toppoint.de> | ||||
* | | Fix AttributeError when bind_dn is not defined. | Daniel Ehlers | 2016-08-14 | 1 | -1/+1 |
| | | | | | | | | | | | | | | | | | | In case one does not define bind_dn in ldap configuration, filter attribute is not declared. Since auth code only uses ldap_filter attribute when according LDAP mode is selected, it is safe to only declare the attribute in that case. Signed-off-by: Daniel Ehlers <sargon@toppoint.de> | ||||
* | | Only process one local membership event per room at a time | Erik Johnston | 2016-08-12 | 1 | -1/+1 |
|/ | |||||
* | Merge pull request #997 from Half-Shot/develop | Erik Johnston | 2016-08-11 | 1 | -3/+6 |
|\ | | | | | Don't change status_msg on /sync | ||||
| * | Don't change status_msg on /sync | Will Hunt | 2016-08-10 | 1 | -3/+6 |
| | | |||||
* | | Also check if server is in the room | Erik Johnston | 2016-08-10 | 1 | -2/+7 |
| | | |||||
* | | Correctly auth /event/ requests | Erik Johnston | 2016-08-10 | 1 | -5/+6 |
| | | |||||
* | | Only resign our own events | Erik Johnston | 2016-08-10 | 1 | -9/+10 |
|/ | |||||
* | /login: Respond with a 403 when we get an invalid m.login.token | Richard van der Hoff | 2016-08-09 | 1 | -3/+3 |
| | |||||
* | Fix login with m.login.token | Richard van der Hoff | 2016-08-08 | 1 | -13/+4 |
| | | | | | login with token (as used by CAS auth) was broken by 067596d, such that it always returned a 401. | ||||
* | Fix backfill auth events | Erik Johnston | 2016-08-05 | 1 | -21/+50 |
| | |||||
* | keys/query: Omit device displayname if null | Richard van der Hoff | 2016-08-04 | 1 | -3/+4 |
| | | | | ... which makes it more consistent with user displaynames. | ||||
* | Include device name in /keys/query response | Richard van der Hoff | 2016-08-03 | 1 | -3/+8 |
| | | | | Add an 'unsigned' section which includes the device display name. | ||||
* | keys/query: return all users which were asked for | Richard van der Hoff | 2016-08-03 | 1 | -3/+6 |
| | | | | | | In the situation where all of a user's devices get deleted, we want to indicate this to a client, so we want to return an empty dictionary, rather than nothing at all. | ||||
* | Merge branch 'rav/null_default_device_displayname' into develop | Richard van der Hoff | 2016-08-03 | 1 | -1/+1 |
|\ | |||||
| * | PEP8 | Richard van der Hoff | 2016-08-03 | 1 | -1/+1 |
| | | |||||
| * | Default device_display_name to null | Richard van der Hoff | 2016-08-03 | 1 | -1/+1 |
| | | | | | | | | | | | | It turns out that it's more useful to return a null device display name (and let clients decide how to handle it: eg, falling back to device_id) than using a constant string like "unknown device". | ||||
* | | E2eKeysHandler: minor tweaks | Richard van der Hoff | 2016-08-03 | 1 | -5/+3 |
| | | | | | | | | PR feedback | ||||
* | | Merge branch 'develop' into rav/refactor_device_query | Mark Haines | 2016-08-03 | 3 | -9/+4 |
|\| | |||||
| * | Merge pull request #940 from matrix-org/erikj/fed_state_cache | Erik Johnston | 2016-08-02 | 3 | -9/+4 |
| |\ | | | | | | | Cache federation state responses | ||||
| | * | Cache federation state responses | Erik Johnston | 2016-07-21 | 3 | -9/+4 |
| | | | |||||
* | | | E2E keys: Make federation query share code with client query | Richard van der Hoff | 2016-08-02 | 1 | -25/+90 |
| | | | | | | | | | | | | | | | Refactor the e2e query handler to separate out the local query, and then make the federation handler use it. | ||||
* | | | Move e2e query logic into a handler | Richard van der Hoff | 2016-08-01 | 1 | -0/+67 |
|/ / | |||||
* | | Merge pull request #958 from matrix-org/paul/SYN-738 | Paul Evans | 2016-07-29 | 1 | -0/+7 |
|\ \ | | | | | | | Forbid non-ASes from registering users whose names begin with '_' | ||||
| * | | Forbid non-ASes from registering users whose names begin with '_' (SYN-738) | Paul "LeoNerd" Evans | 2016-07-27 | 1 | -0/+7 |
| | | | |||||
* | | | Mention that func will fetch auth events | Erik Johnston | 2016-07-29 | 1 | -0/+2 |
| | | | |||||
* | | | Update docstring | Erik Johnston | 2016-07-29 | 1 | -0/+6 |
| | | | |||||
* | | | Handle the case of missing auth events when joining a room | Erik Johnston | 2016-07-28 | 1 | -4/+23 |
| | | | |||||
* | | | Delete e2e keys on device delete | Richard van der Hoff | 2016-07-27 | 1 | -0/+4 |
|/ / | |||||
* | | Add `create_requester` function | Richard van der Hoff | 2016-07-26 | 4 | -29/+32 |
| | | | | | | | | | | Wrap the `Requester` constructor with a function which provides sensible defaults, and use it throughout | ||||
* | | Delete refresh tokens when deleting devices | Richard van der Hoff | 2016-07-26 | 1 | -2/+4 |
| | | |||||
* | | Implement updating devices | Richard van der Hoff | 2016-07-26 | 1 | -0/+24 |
| | | | | | | | | You can update the displayname of devices now. | ||||
* | | Implement deleting devices | Richard van der Hoff | 2016-07-26 | 2 | -3/+46 |
| | | |||||
* | | Use get to avoid KeyErrors | David Baker | 2016-07-22 | 1 | -1/+1 |
| | | |||||
* | | Log the hostname the reCAPTCHA was completed on | David Baker | 2016-07-22 | 1 | -2/+11 |
| | | | | | | | | This could be useful information to have in the logs. Also comment about how & why we don't verify the hostname. | ||||
* | | make /devices return a list | Richard van der Hoff | 2016-07-21 | 1 | -5/+5 |
| | | | | | | | | Turns out I specced this to return a list of devices rather than a dict of them | ||||
* | | Fix PEP8 errors | Richard van der Hoff | 2016-07-21 | 1 | -1/+1 |
| | | |||||
* | | Implement GET /device/{deviceId} | Richard van der Hoff | 2016-07-21 | 1 | -9/+37 |
| | | |||||
* | | GET /devices endpoint | Richard van der Hoff | 2016-07-20 | 1 | -0/+27 |
|/ | | | | | | | implement a GET /devices endpoint which lists all of the user's devices. It also returns the last IP where we saw that device, so there is some dancing to fish that out of the user_ips table. | ||||
* | Merge pull request #935 from matrix-org/erikj/backfill_notifs | Erik Johnston | 2016-07-20 | 1 | -5/+6 |
|\ | | | | | Don't notify pusher pool for backfilled events | ||||
| * | Don't notify pusher pool for backfilled events | Erik Johnston | 2016-07-20 | 1 | -5/+6 |
| | | |||||
* | | Merge pull request #933 from matrix-org/rav/type_annotations | Richard van der Hoff | 2016-07-20 | 2 | -0/+8 |
|\ \ | | | | | | | Type annotations | ||||
| * | | Type annotations | Richard van der Hoff | 2016-07-19 | 2 | -0/+8 |
| | | | | | | | | | | | | | | | Add some type annotations to help PyCharm (in particular) to figure out the types of a bunch of things. | ||||
* | | | Merge pull request #932 from matrix-org/rav/register_refactor | David Baker | 2016-07-20 | 1 | -5/+8 |
|\ \ \ | |_|/ |/| | | Further registration refactoring | ||||
| * | | Further registration refactoring | Richard van der Hoff | 2016-07-19 | 1 | -5/+8 |
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | * `RegistrationHandler.appservice_register` no longer issues an access token: instead it is left for the caller to do it. (There are two of these, one in `synapse/rest/client/v1/register.py`, which now simply calls `AuthHandler.issue_access_token`, and the other in `synapse/rest/client/v2_alpha/register.py`, which is covered below). * In `synapse/rest/client/v2_alpha/register.py`, move the generation of access_tokens into `_create_registration_details`. This means that the normal flow no longer needs to call `AuthHandler.issue_access_token`; the shared-secret flow can tell `RegistrationHandler.register` not to generate a token; and the appservice flow continues to work despite the above change. | ||||
* | | Merge pull request #922 from matrix-org/erikj/file_api2 | Erik Johnston | 2016-07-20 | 1 | -4/+12 |
|\ \ | |/ |/| | Feature: Add filter to /messages. Add 'contains_url' to filter. | ||||
| * | Add filter param to /messages API | Erik Johnston | 2016-07-14 | 1 | -4/+12 |
| | | |||||
* | | Merge pull request #929 from matrix-org/rav/support_deviceid_in_login | Richard van der Hoff | 2016-07-19 | 2 | -8/+82 |
|\ \ | | | | | | | Add device_id support to /login | ||||
| * | | Add device_id support to /login | Richard van der Hoff | 2016-07-18 | 2 | -8/+82 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a 'devices' table to the storage, as well as a 'device_id' column to refresh_tokens. Allow the client to pass a device_id, and initial_device_display_name, to /login. If login is successful, then register the device in the devices table if it wasn't known already. If no device_id was supplied, make one up. Associate the device_id with the access token and refresh token, so that we can get at it again later. Ensure that the device_id is copied from the refresh token to the access_token when the token is refreshed. | ||||
* | | | Summary line | Mark Haines | 2016-07-19 | 1 | -2/+1 |
| | | | |||||
* | | | Update docstring on Handlers. | Mark Haines | 2016-07-19 | 1 | -3/+15 |
|/ / | | | | | | | To indicate it is deprecated. | ||||
* | | Refactor login flow | Richard van der Hoff | 2016-07-18 | 1 | -47/+59 |
| | | | | | | | | | | | | | | | | | | | | Make sure that we have the canonical user_id *before* calling get_login_tuple_for_user_id. Replace login_with_password with a method which just validates the password, and have the caller call get_login_tuple_for_user_id. This brings the password flow into line with the other flows, and will give us a place to register the device_id if necessary. | ||||
* | | Fix a doc-comment | Richard van der Hoff | 2016-07-18 | 1 | -1/+1 |
| | | | | | | | | The `store` in a handler is a generic DataStore, not just an events.StateStore. | ||||
* | | Merge pull request #919 from matrix-org/erikj/auth_fix | Erik Johnston | 2016-07-15 | 1 | -2/+6 |
|\ \ | | | | | | | Various auth.py fixes. | ||||
| * | | Comment | Erik Johnston | 2016-07-15 | 1 | -0/+4 |
| | | | |||||
| * | | Check sender signed event | Erik Johnston | 2016-07-14 | 1 | -2/+2 |
| |/ | |||||
* / | Bug fix: expire invalid access tokens | Negar Fazeli | 2016-07-13 | 2 | -5/+6 |
|/ | |||||
* | Merge branch 'erikj/shared_secret' into erikj/test2 | Erik Johnston | 2016-07-06 | 3 | -17/+34 |
|\ | |||||
| * | Add an admin option to shared secret registration | Erik Johnston | 2016-07-05 | 1 | -1/+3 |
| | | |||||
| * | Merge pull request #904 from ↵ | David Baker | 2016-07-05 | 1 | -14/+27 |
| |\ | | | | | | | | | | | | | matrix-org/dbkr/register_email_no_untrusted_id_server requestToken update | ||||
| | * | requestToken update | David Baker | 2016-06-30 | 1 | -14/+27 |
| | | | | | | | | | | | | | | | | | | 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. | ||||
| * | | Fix password config | Kent Shikama | 2016-07-05 | 1 | -2/+2 |
| | | | |||||
| * | | Fix pep8 | Kent Shikama | 2016-07-05 | 1 | -1/+2 |
| | | | |||||
| * | | Add pepper to password hashing | Kent Shikama | 2016-07-05 | 1 | -2/+3 |
| | | | | | | | | | | | | Signed-off-by: Kent Shikama <kent@kentshikama.com> | ||||
* | | | Add ReadWriteLock for pagination and history prune | Erik Johnston | 2016-07-05 | 1 | -34/+36 |
| | | | |||||
* | | | Add purge_history API | Erik Johnston | 2016-07-05 | 2 | -1/+14 |
|/ / | |||||
* | | Fix style violations | Kent Shikama | 2016-07-04 | 1 | -1/+2 |
| | | | | | | | | Signed-off-by: Kent Shikama <kent@kentshikama.com> | ||||
* | | Optionally include password hash in createUser endpoint | Kent Shikama | 2016-07-03 | 1 | -2/+2 |
|/ | | | | Signed-off-by: Kent Shikama <kent@kentshikama.com> | ||||
* | Rework ldap integration with ldap3 | Martin Weinelt | 2016-06-22 | 1 | -33/+170 |
| | | | | | | | | | | | | | | | | | | | Use the pure-python ldap3 library, which eliminates the need for a system dependency. Offer both a `search` and `simple_bind` mode, for more sophisticated ldap scenarios. - `search` tries to find a matching DN within the `user_base` while employing the `user_filter`, then tries the bind when a single matching DN was found. - `simple_bind` tries the bind against a specific DN by combining the localpart and `user_base` Offer support for STARTTLS on a plain connection. The configuration was changed to reflect these new possibilities. Signed-off-by: Martin Weinelt <hexa@darmstadt.ccc.de> | ||||
* | Add a comment on why we don't create a profile for upgrading users | Mark Haines | 2016-06-17 | 1 | -0/+1 |
| | |||||
* | Remove registered_users from the distributor. | Mark Haines | 2016-06-17 | 2 | -20/+10 |
| | | | | | | | | | | The only place that was observed was to set the profile. I've made it so that the profile is set within store.register in the same transaction that creates the user. This required some slight changes to the registration code for upgrading guest users, since it previously relied on the distributor swallowing errors if the profile already existed. | ||||
* | Only re-sign our own events | Erik Johnston | 2016-06-17 | 1 | -6/+9 |
| | |||||
* | Fix TypeError in call to bcrypt.hashpw | Salvatore LaMendola | 2016-06-16 | 1 | -1/+1 |
| | | | | | | | | - At the very least, this TypeError caused logins to fail on my own running instance of Synapse, and the simple (explicit) UTF-8 conversion resolved login errors for me. Signed-off-by: Salvatore LaMendola <salvatore.lamendola@gmail.com> | ||||
* | Correctly mark backfilled events as backfilled | Erik Johnston | 2016-06-15 | 1 | -14/+16 |
| | |||||
* | Fix a bug caused by a change in auth_handler function | Negar Fazeli | 2016-06-08 | 1 | -2/+2 |
| | | | | Fix the relevant unit test cases | ||||
* | Pull full state for each room all at once | Erik Johnston | 2016-06-08 | 1 | -16/+16 |
| | |||||
* | Don't hit DB for noop replications queries | Erik Johnston | 2016-06-08 | 1 | -0/+3 |
| | |||||
* | Remove dead code. | Mark Haines | 2016-06-07 | 1 | -13/+0 |
| | | | | | | | | | | | Loading push rules now happens in the datastore, so we can remove the methods that loaded them outside the datastore. The ``waiting_for_join_list`` in federation handler is populated by anything, so can be removed. The ``_get_members_events_txn`` method isn't called from anywhere so can be removed. | ||||
* | .values() returns list of sets | Erik Johnston | 2016-06-06 | 1 | -1/+2 |
| | |||||
* | Fix typos | Erik Johnston | 2016-06-06 | 1 | -32/+36 |
| | |||||
* | Fire after 30s not 8h | Erik Johnston | 2016-06-06 | 1 | -1/+1 |
| | |||||
* | Merge pull request #832 from matrix-org/erikj/presence_coount | Erik Johnston | 2016-06-03 | 1 | -5/+9 |
|\ | | | | | Change def of small delta in presence stream. Add metrics. | ||||
| * | Change metric style | Erik Johnston | 2016-06-03 | 1 | -5/+4 |
| | | |||||
| * | Presence metrics. Change def of small delta | Erik Johnston | 2016-06-03 | 1 | -5/+10 |
| | | |||||
* | | Fix typo | Erik Johnston | 2016-06-03 | 1 | -1/+1 |
|/ | |||||
* | Merge pull request #829 from matrix-org/erikj/poke_notifier | Erik Johnston | 2016-06-03 | 1 | -4/+7 |
|\ | | | | | Poke notifier on next reactor tick | ||||
| * | Poke notifier on next reactor tick | Erik Johnston | 2016-06-03 | 1 | -4/+7 |
| | | |||||
* | | Load push rules in storage layer, so that they get cached | Erik Johnston | 2016-06-03 | 1 | -3/+2 |
|/ | |||||
* | Merge remote-tracking branch 'origin/dbkr/email_notif_string_fmt_error' into ↵ | David Baker | 2016-06-02 | 1 | -28/+36 |
|\ | | | | | | | dbkr/email_unsubscribe |