summary refs log tree commit diff
path: root/synapse/federation/federation_client.py (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Consistently use six's iteritems and wrap lazy keys/values in list() if ↵Amber Brown2018-05-311-2/+2
| | | | they're not meant to be lazy (#3307)
* replacing portionsAmber Brown2018-05-211-10/+7
|
* Merge branch 'develop' into py3-xrange-1Richard van der Hoff2018-04-301-2/+3
|\
| * Use run_in_background in preference to preserve_fnRichard van der Hoff2018-04-271-2/+3
| | | | | | | | | | | | While I was going through uses of preserve_fn for other PRs, I converted places which only use the wrapped function once to use run_in_background, to avoid creating the function object.
* | Move more xrange to sixAdrian Tschira2018-04-281-1/+3
|/ | | | | | plus a bonus next() Signed-off-by: Adrian Tschira <nota@notafile.com>
* Refactor store.have_eventsRichard van der Hoff2018-04-201-1/+1
| | | | | | It turns out that most of the time we were calling have_events, we were only using half of the result. Replace have_events with have_seen_events and get_rejection_reasons, so that we can see what's going on a bit more clearly.
* Move property setting from ReplicationLayer to FederationBaseErik Johnston2018-03-131-0/+1
|
* Add federation_domain_whitelist option (#2820)Matthew Hodgson2018-01-221-1/+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
* Factor out `event_from_pdu_json`Richard van der Hoff2017-12-301-21/+15
| | | | | turns out we have two copies of this, and neither needs to be an instance method
* federation_client: clean up importsRichard van der Hoff2017-12-301-13/+10
|
* Remove preserve_context_over_{fn, deferred}Richard van der Hoff2017-11-141-2/+2
| | | | | Both of these functions ae known to leak logcontexts. Replace the remaining calls to them and kill them off.
* Fix logcontexts in _check_sigs_and_hashesRichard van der Hoff2017-09-201-4/+4
|
* Fix some lies, and other clarifications, in docstringsRichard van der Hoff2017-04-211-2/+48
| | | | | The documentation on get_json has been wrong ever since the very first commit to synapse...
* Ignore backoff history for invites, aliases, and roomdirsRichard van der Hoff2017-03-231-2/+5
| | | | | Add a param to the federation client which lets us ignore historical backoff data for federation queries, and set it for a handful of operations.
* push federation retry limiter down to matrixfederationclientRichard van der Hoff2017-03-231-20/+13
| | | | | rather than having to instrument everywhere we make a federation call, make the MatrixFederationHttpClient manage the retry limiter.
* Fix docstringRichard van der Hoff2017-03-091-2/+1
|
* Implement device key caching over federationErik Johnston2017-01-261-0/+10
|
* Fix couple of federation state bugsErik Johnston2017-01-171-2/+4
|
* limit total timeout for get_missing_events to 10sMatthew Hodgson2016-12-311-1/+3
|
* Remove fallback from get_missing_events.Mark Haines2016-12-301-69/+0
| | | | | | | get_missing_events used to fallback to fetching the missing events individually requesting from every server in the room, one by one.e This could be unacceptably slow, possibly causing #1732
* Add new API appservice specific public room listErik Johnston2016-12-061-2/+5
|
* Use new federation_sender DIErik Johnston2016-11-161-49/+0
|
* Add transaction queue and transport layer to DIErik Johnston2016-11-161-1/+0
|
* Move logic into transaction_queueErik Johnston2016-11-161-14/+2
|
* Rename transaction queue functions to send_*Erik Johnston2016-11-161-7/+7
|
* Time out typing over federationErik Johnston2016-09-231-2/+0
|
* Support filtering remote room listsErik Johnston2016-09-161-2/+5
|
* Pass since/from parameters over federationErik Johnston2016-09-151-18/+4
|
* Merge pull request #1110 from matrix-org/markjh/e2e_timeoutMark Haines2016-09-131-4/+8
|\ | | | | Add a timeout parameter for end2end key queries.
| * Add a timeout parameter for end2end key queries.Mark Haines2016-09-121-4/+8
| | | | | | | | | | | | | | | | | | | | 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.
* | Fix backfill when cannot find an event.Erik Johnston2016-09-121-1/+1
|/ | | | `get_pdu` can succeed but return None.
* Clobber EDUs in send queueErik Johnston2016-09-091-2/+6
|
* Add a new method to enqueue the device messages rather than sending a dummy EDUMark Haines2016-09-071-0/+6
|
* Merge branch 'erikj/pdu_check' of github.com:matrix-org/synapse into developErik Johnston2016-09-011-5/+5
|\
| * Ensure we only return a validated pdu in get_pduErik Johnston2016-09-011-5/+5
| |
* | Use state handler instead of get_users_in_room/get_joined_hostsErik Johnston2016-08-261-1/+4
|/
* Preserve some logcontextsErik Johnston2016-08-241-6/+11
|
* Don't stop on 4xx series errorsErik Johnston2016-08-101-11/+1
|
* Also pull out rejected eventsErik Johnston2016-08-101-1/+1
|
* Store if we fail to fetch an event from a destinationErik Johnston2016-08-101-1/+36
|
* Fix a couple of python bugsErik Johnston2016-08-051-6/+8
|
* Retry joining via other servers if first one failedErik Johnston2016-08-051-5/+16
|
* Fix typoErik Johnston2016-08-051-1/+1
|
* Check if we already have the events returned by /state/Erik Johnston2016-08-051-2/+16
|
* Fallback to /state/ on both 400 and 404Erik Johnston2016-08-051-1/+1
|
* Tweak integrity error recovery to work as intendedBenjamin Saunders2016-08-041-1/+1
|
* Fix typos.Erik Johnston2016-08-041-3/+3
|
* Tidy up get_eventsErik Johnston2016-08-041-12/+10
|
* Rename fields to _idsErik Johnston2016-08-031-2/+2
|
* Fix copy + paste failsErik Johnston2016-08-031-5/+10
|
* Actually call get_room_stateErik Johnston2016-08-031-0/+4
|
* Fix syntax errorErik Johnston2016-08-031-1/+8
|
* CommentErik Johnston2016-08-031-0/+14
|
* Add /state_ids federation APIErik Johnston2016-08-031-3/+70
| | | | | The new API only returns the event_ids for the state, as most requesters will already have the vast majority of the events already.
* Linearize fetching of gaps on incoming eventsErik Johnston2016-06-151-0/+2
| | | | | This potentially stops the server from doing multiple requests for the same data.
* Apparently I am not permitted to have two blank lines hereDavid Baker2016-05-311-1/+0
|
* Basic, un-cached support for secondary_directory_serversDavid Baker2016-05-311-0/+21
|
* Intern all the thingsErik Johnston2016-03-231-0/+1
|
* Add profile information to invitesErik Johnston2016-03-041-1/+1
|
* Fix flake8 warnings for new flake8Daniel Wagner-Hall2016-02-021-1/+1
|
* copyrightsMatthew Hodgson2016-01-071-1/+1
|
* Don't complain if /make_join response lacks 'prev_state' list (SYN-517)Paul "LeoNerd" Evans2015-11-131-0/+6
|
* Fix missing profile data in federation joinsErik Johnston2015-11-121-1/+4
| | | | | There was a regression where we stopped including profile data in initial joins for rooms joined over federation.
* Exchange 3pid invites for m.room.member invitesDaniel Wagner-Hall2015-11-051-8/+25
|
* Allow rejecting invitesDaniel Wagner-Hall2015-10-201-6/+61
| | | | | This is done by using the same /leave flow as you would use if you had already accepted the invite and wanted to leave.
* Look for keys on the right objectsDaniel Wagner-Hall2015-10-151-1/+3
|
* Remove unnecessary class-wrappingDaniel Wagner-Hall2015-10-131-3/+3
|
* Move event contents into third_party_layout fieldDaniel Wagner-Hall2015-10-131-2/+2
|
* Fix lint errorsDaniel Wagner-Hall2015-10-061-1/+0
|
* Implement third party identifier invitesDaniel Wagner-Hall2015-10-011-2/+7
|
* Merge pull request #208 from matrix-org/markjh/end-to-end-key-federationMark Haines2015-08-181-0/+30
|\ | | | | Federation for end-to-end key requests.
| * Get the end-to-end key federation workingMark Haines2015-07-241-8/+4
| |
| * Add federation support for end-to-end key requestsMark Haines2015-07-231-0/+34
| |
* | Move all the caches into their own package, synapse.util.cachesErik Johnston2015-08-111-1/+1
|/
* Implement bulk verify_signed_json APIErik Johnston2015-06-261-14/+43
|
* Remove redundant for loopErik Johnston2015-05-221-3/+0
|
* Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2015-05-221-0/+2
|\ | | | | | | erikj/backfill_fixes
| * Add doc stringsErik Johnston2015-05-221-0/+2
| |
* | Merge branch 'erikj/join_perf' of github.com:matrix-org/synapse into ↵Erik Johnston2015-05-211-3/+3
|\| | | | | | | erikj/backfill_fixes
| * Merge branch 'develop' of github.com:matrix-org/synapse into erikj/join_perfErik Johnston2015-05-211-3/+3
| |\
| | * Remove pointless newlineErik Johnston2015-05-181-1/+0
| | |
| | * Remove debug loggingErik Johnston2015-05-181-8/+0
| | |
| | * Fix daedlockErik Johnston2015-05-151-3/+12
| | |
* | | Actually fetch state for new backwards extremeties when backfilling.Erik Johnston2015-05-201-1/+5
|/ /
* | Add None checkErik Johnston2015-05-191-1/+1
| |
* | Add a timeout param to get_eventErik Johnston2015-05-191-9/+14
|/
* Missed events are not outliersErik Johnston2015-05-051-1/+1
|
* Replace the @metrics.counted annotations in federation with ↵Paul "LeoNerd" Evans2015-03-121-12/+15
| | | | specifically-written counters and distributions
* Initial attempt at sprinkling some @metrics.counted decorations around the ↵Paul "LeoNerd" Evans2015-03-121-0/+14
| | | | federation code
* Delete pointless (and unreachable) __init__ method from FederationClientPaul "LeoNerd" Evans2015-03-121-2/+0
|
* Remove unecessary checkErik Johnston2015-03-051-6/+0
|
* Respect min_depth argumentErik Johnston2015-03-051-4/+6
|
* Docs.Erik Johnston2015-03-051-0/+16
|
* Handle if get_missing_pdu returns 400 or not all events.Erik Johnston2015-03-051-13/+96
|
* Implement and use new batched get missing pduErik Johnston2015-02-231-0/+19
|
* Merge branch 'keyclient_retry_scheme' of github.com:matrix-org/synapse into ↵Erik Johnston2015-02-181-12/+25
|\ | | | | | | develop
| * Add per server retry limiting.Erik Johnston2015-02-171-12/+24
| | | | | | | | | | Factor out the pre destination retry logic from TransactionQueue so it can be reused in both get_pdu and crypto.keyring
* | Rename _fail_fetch_pdu_cache to _get_pdu_cacheErik Johnston2015-02-181-8/+8
| |
* | Cache results of get_pdu.Erik Johnston2015-02-161-3/+39
|/
* Connection errors in twisted aren't RuntimeErrorsErik Johnston2015-02-051-2/+2
|
* Pass through list of room hosts from room alias query to federation so that ↵Erik Johnston2015-02-051-1/+4
| | | | it can retry against different room hosts
* Apply sanity to the transport client interface. Convert 'make_join' and ↵Erik Johnston2015-02-041-31/+51
| | | | 'send_join' to accept iterables of destinations
* Retry make_joinErik Johnston2015-02-041-7/+12
|
* Keep around the old (buggy) version of the prune_event function so that we ↵Erik Johnston2015-02-031-94/+2
| | | | can use it to check signatures for events on old servers
* PEP8Erik Johnston2015-02-031-1/+0
|
* Don't bother requesting PDUs with bad signatures from the same serverErik Johnston2015-02-021-16/+17
|
* Don't fail an entire request if one of the returned events fails a signature ↵Erik Johnston2015-02-021-26/+81
| | | | check. If an event does fail a signature check, look in the local database and request it from the originator.
* Fix bug where we superfluously asked for current state. Change API of ↵Erik Johnston2015-01-301-6/+1
| | | | /query_auth/ so that we don't duplicate events in the response.
* Initial implementation of auth conflict resolutionErik Johnston2015-01-291-1/+1
|
* Start implementing auth conflict resErik Johnston2015-01-281-0/+39
|
* Make it the responsibility of the replication layer to check signature and ↵Erik Johnston2015-01-261-13/+95
| | | | hashes.
* Split up replication_layer module into client, server and transaction queueErik Johnston2015-01-261-0/+293