summary refs log tree commit diff
path: root/synapse/handlers/device.py (follow)
Commit message (Collapse)AuthorAgeFilesLines
* s/replication_client/federation_client/Erik Johnston2018-03-131-1/+1
|
* Split replication layer into twoErik Johnston2018-03-131-2/+1
|
* Split out edu/query registration to a separate classErik Johnston2018-03-131-2/+4
|
* Add federation_domain_whitelist option (#2820)Matthew Hodgson2018-01-221-0/+4
| | | | | | 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
* Delete devices in various logout situationsRichard van der Hoff2017-11-291-1/+19
| | | | | | | | | | | | | Make sure that we delete devices whenever a user is logged out due to any of the following situations: * /logout * /logout_all * change password * deactivate account (by the user or by an admin) * invalidate access token from a dynamic module Fixes #2672.
* Merge remote-tracking branch 'origin/develop' into ↵David Baker2017-11-011-2/+0
|\ | | | | | | rav/refactor_accesstoken_delete
| * Remove the last vestiges of refresh_tokensRichard van der Hoff2017-10-311-2/+0
| |
* | Move access token deletion into auth handlerRichard van der Hoff2017-11-011-2/+3
|/ | | | | | | Also move duplicated deactivation code into the auth handler. I want to add some hooks when we deactivate an access token, so let's bring it all in here so that there's somewhere to put it.
* Correctly handle leaving room in /key/changesErik Johnston2017-09-181-13/+12
|
* Fix typoErik Johnston2017-09-151-1/+1
|
* Handle joining/leaving rooms in /keys/changesErik Johnston2017-09-131-1/+38
|
* Add left section to /keys/changesErik Johnston2017-09-081-6/+16
|
* Send down device list change notif when member leaves/rejoins roomErik Johnston2017-09-071-1/+1
|
* Fix up client ips to read from pending dataErik Johnston2017-06-271-2/+2
|
* CommentErik Johnston2017-05-051-0/+6
|
* Add comment and TODOErik Johnston2017-05-051-0/+6
|
* Handle exceptions thrown in handling remote device list updatesErik Johnston2017-05-051-1/+16
|
* Don't recreate so many setsErik Johnston2017-03-161-8/+6
|
* Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2017-03-141-0/+34
|\ | | | | | | erikj/public_list_speed
| * Implement _simple_delete_many_txn, use it to delete devicesLuke Barnard2017-03-131-0/+34
| | | | | | | | | | | | (But this doesn't implement the same for deleting access tokens or e2e keys. Also respond to code review.
* | Get current state by using current_state_events tableErik Johnston2017-03-101-1/+1
|/
* Don't keep around old stream IDs foreverErik Johnston2017-03-031-2/+9
|
* SpellingErik Johnston2017-03-031-2/+2
|
* Fix device list update to not constantly resyncErik Johnston2017-03-011-46/+115
|
* Fix bugs in the /keys/changes apiRichard van der Hoff2017-02-141-9/+29
| | | | | | | | | | | | | | | * `get_forward_extremeties_for_room` takes a numeric `stream_ordering`. We were passing a `RoomStreamToken`, which meant that it returned the *current* extremities, rather than those corresponding to the `from_token`. However: * `get_state_ids_for_events` required a second ('types') parameter; this meant that a `TypeError` was thrown and we ended up acting as though there was *no* prev state. * `get_state_ids_for_events` actually returns a map from event_id to state dictionary - just looking up the state keys in it again meant that we acted as though there was no prev state. We now check if each member's state has changed since *any* of the extremities. Also add/fix some comments.
* Measure new device list stuffErik Johnston2017-02-021-0/+4
|
* Use new get_users_who_share_room_with_userErik Johnston2017-02-021-11/+13
|
* Use stream_ordering_to_exterm for /keys/changesErik Johnston2017-02-021-9/+9
|
* Doc argsErik Johnston2017-02-011-0/+7
|
* Include newly joined users in /keys/changes APIErik Johnston2017-02-011-4/+35
|
* Implement /keys/changesErik Johnston2017-02-011-0/+16
|
* Use get_users_in_room and declare it iterableErik Johnston2017-01-301-1/+1
|
* Hook device list updates to replicationErik Johnston2017-01-271-16/+0
|
* Better nameErik Johnston2017-01-271-1/+3
|
* Handle users leaving roomsErik Johnston2017-01-261-1/+16
|
* Add commentsErik Johnston2017-01-261-3/+16
|
* Implement device key caching over federationErik Johnston2017-01-261-12/+73
|
* Fix up sending of m.device_list_update edusErik Johnston2017-01-251-0/+1
|
* Add basic implementation of local device list changesErik Johnston2017-01-251-12/+53
|
* make device IDs more useful for human disambiguationMatthew Hodgson2016-09-131-1/+1
|
* PEP8Richard van der Hoff2016-08-031-1/+1
|
* Default device_display_name to nullRichard van der Hoff2016-08-031-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".
* Delete e2e keys on device deleteRichard van der Hoff2016-07-271-0/+4
|
* Delete refresh tokens when deleting devicesRichard van der Hoff2016-07-261-2/+4
|
* Implement updating devicesRichard van der Hoff2016-07-261-0/+24
| | | | You can update the displayname of devices now.
* Implement deleting devicesRichard van der Hoff2016-07-261-1/+26
|
* make /devices return a listRichard van der Hoff2016-07-211-5/+5
| | | | Turns out I specced this to return a list of devices rather than a dict of them
* Fix PEP8 errorsRichard van der Hoff2016-07-211-1/+1
|
* Implement GET /device/{deviceId}Richard van der Hoff2016-07-211-9/+37
|
* GET /devices endpointRichard van der Hoff2016-07-201-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.
* Add device_id support to /loginRichard van der Hoff2016-07-181-0/+71
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.