Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Convert the federation agent and related code to async/await. (#7874) | Patrick Cloke | 2020-07-23 | 2 | -16/+10 |
| | |||||
* | Include a user agent in federation requests. (#7677) | Patrick Cloke | 2020-06-16 | 2 | -3/+24 |
| | |||||
* | Share SSL contexts for non-federation requests (#7094) | Richard van der Hoff | 2020-03-17 | 1 | -1/+1 |
| | | | | | | | Extends #5794 etc to the SimpleHttpClient so that it also applies to non-federation requests. Fixes #7092. | ||||
* | Remove usage of deprecated logger.warn method from codebase (#6271) | Andrew Morgan | 2019-10-31 | 1 | -1/+1 |
| | | | Replace every instance of `logger.warn` with `logger.warning` as the former is deprecated. | ||||
* | Fix well-known lookups with the federation certificate whitelist (#5997) | Amber Brown | 2019-09-14 | 1 | -1/+1 |
| | |||||
* | Remove unnecessary parentheses around return statements (#5931) | Andrew Morgan | 2019-08-30 | 1 | -1/+1 |
| | | | | | 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 :) | ||||
* | Fix off by one error in SRV result shuffling | Erik Johnston | 2019-08-27 | 1 | -8/+13 |
| | |||||
* | Fixup comments | Erik Johnston | 2019-08-23 | 1 | -1/+9 |
| | |||||
* | Fix logcontexts | Erik Johnston | 2019-08-23 | 1 | -4/+8 |
| | |||||
* | Merge branch 'develop' of github.com:matrix-org/synapse into ↵ | Erik Johnston | 2019-08-22 | 2 | -37/+115 |
|\ | | | | | | | erikj/reliable_lookups | ||||
| * | Change jitter to be a factor rather than absolute value | Erik Johnston | 2019-08-20 | 1 | -11/+12 |
| | | |||||
| * | Fixup changelog and remove debug logging | Erik Johnston | 2019-08-16 | 1 | -4/+1 |
| | | |||||
| * | Retry well known on fail. | Erik Johnston | 2019-08-15 | 2 | -34/+114 |
| | | | | | | | | | | | | If we have recently seen a valid well-known for a domain we want to retry on (non-final) errors a few times, to handle temporary blips in networking/etc. | ||||
* | | Remove now unused pick_server_from_list | Erik Johnston | 2019-08-20 | 1 | -30/+0 |
| | | |||||
* | | Fixup _sort_server_list to be slightly more efficient | Erik Johnston | 2019-08-20 | 1 | -2/+11 |
| | | | | | | | | | | Also document that we are using the algorithm described in RFC2782 and ensure we handle zero weight correctly. | ||||
* | | Refactor MatrixFederationAgent to retry SRV. | Erik Johnston | 2019-08-15 | 2 | -189/+202 |
|/ | | | | | | | | This refactors MatrixFederationAgent to move the SRV lookup into the endpoint code, this has two benefits: 1. Its easier to retry different host/ports in the same way as HostnameEndpoint. 2. We avoid SRV lookups if we have a free connection in the pool | ||||
* | Retry well-known lookup before expiry. | Erik Johnston | 2019-08-13 | 1 | -22/+60 |
| | | | | | | | | | This gives a bit of a grace period where we can attempt to refetch a remote `well-known`, while still using the cached result if that fails. Hopefully this will make the well-known resolution a bit more torelant of failures, rather than it immediately treating failures as "no result" and caching that for an hour. | ||||
* | Make default well known cache global again. | Erik Johnston | 2019-08-13 | 1 | -1/+4 |
| | |||||
* | Move well known lookup into a separate clas | Erik Johnston | 2019-08-07 | 2 | -153/+197 |
| | |||||
* | Add a lower bound for TTL on well known results. | Erik Johnston | 2019-08-06 | 1 | -0/+4 |
| | | | | | | | It costs both us and the remote server for us to fetch the well known for every single request we send, so we add a minimum cache period. This is set to 5m so that we still honour the basic premise of "refetch frequently". | ||||
* | Share SSL options for well-known requests | Erik Johnston | 2019-07-31 | 1 | -11/+5 |
| | |||||
* | Replace returnValue with return (#5736) | Amber Brown | 2019-07-23 | 2 | -30/+24 |
| | |||||
* | Move logging utilities out of the side drawer of util/ and into logging/ (#5606) | Amber Brown | 2019-07-04 | 2 | -2/+2 |
| | |||||
* | Run Black. (#5482) | Amber Brown | 2019-06-20 | 2 | -60/+75 |
| | |||||
* | Config option for verifying federation certificates (MSC 1711) (#4967) | Andrew Morgan | 2019-04-25 | 1 | -1/+1 |
| | |||||
* | Minor docstring fixes for MatrixFederationAgent (#4765) | Andrew Morgan | 2019-02-28 | 1 | -1/+5 |
| | |||||
* | Merge pull request #4544 from matrix-org/rav/skip_invalid_well_known | Richard van der Hoff | 2019-02-01 | 1 | -19/+6 |
|\ | | | | | Treat an invalid .well-known the same as an absent one | ||||
| * | Treat an invalid .well-known the same as an absent one | Richard van der Hoff | 2019-02-01 | 1 | -19/+6 |
| | | | | | | | | ... basically, carry on and fall back to SRV etc. | ||||
* | | Fix b'ab' noise in logs | Richard van der Hoff | 2019-02-01 | 1 | -1/+1 |
|/ | |||||
* | Cache failures to parse .well-known | Richard van der Hoff | 2019-02-01 | 1 | -13/+43 |
| | | | | Also add a Measure block around the .well-known fetch | ||||
* | better logging for federation connections | Richard van der Hoff | 2019-01-31 | 1 | -5/+16 |
| | |||||
* | Update federation routing logic to check .well-known before SRV | Richard van der Hoff | 2019-01-31 | 1 | -5/+5 |
| | |||||
* | Merge pull request #4521 from matrix-org/rav/fed_routing/cleanups | Richard van der Hoff | 2019-01-30 | 1 | -9/+11 |
|\ | | | | | Tiny .well-known fixes | ||||
| * | fix exception text | Richard van der Hoff | 2019-01-30 | 1 | -1/+1 |
| | | |||||
| * | Also jitter the invalid cache period | Richard van der Hoff | 2019-01-30 | 1 | -9/+11 |
| | | |||||
* | | Follow redirects on .well-known (#4520) | Richard van der Hoff | 2019-01-30 | 1 | -2/+4 |
|/ | |||||
* | Add a caching layer to .well-known responses (#4516) | Richard van der Hoff | 2019-01-30 | 1 | -2/+88 |
| | |||||
* | Relax requirement for a content-type on .well-known (#4511) | Richard van der Hoff | 2019-01-29 | 1 | -20/+13 |
| | |||||
* | Implement MSC1708 (.well-known lookups for server routing) (#4489) | Richard van der Hoff | 2019-01-29 | 1 | -4/+110 |
| | |||||
* | docstrings for _RoutingResult | Richard van der Hoff | 2019-01-28 | 1 | -0/+36 |
| | |||||
* | Handle IP literals explicitly | Richard van der Hoff | 2019-01-28 | 1 | -0/+19 |
| | | | | We don't want to be doing .well-known lookups on these guys. | ||||
* | MatrixFederationAgent: factor out routing logic | Richard van der Hoff | 2019-01-28 | 1 | -18/+62 |
| | | | | This is going to get too big and unmanageable. | ||||
* | Fix idna and ipv6 literal handling in MatrixFederationAgent (#4487) | Richard van der Hoff | 2019-01-28 | 1 | -11/+12 |
| | | | | | | | | | | | | | | | | Turns out that the library does a better job of parsing URIs than our reinvented wheel. Who knew. There are two things going on here. The first is that, unlike parse_server_name, URI.fromBytes will strip off square brackets from IPv6 literals, which means that it is valid input to ClientTLSOptionsFactory and HostnameEndpoint. The second is that we stay in `bytes` throughout (except for the argument to ClientTLSOptionsFactory), which avoids the weirdness of (sometimes) ending up with idna-encoded values being held in `unicode` variables. TBH it probably would have been ok but it made the tests fragile. | ||||
* | Fix Host header sent by MatrixFederationAgent (#4468) | Richard van der Hoff | 2019-01-25 | 1 | -0/+10 |
| | | | | | | Move the Host header logic down here so that (a) it is used if we reuse the agent elsewhere, and (b) we can mess about with it with .well-known. | ||||
* | Look up the right SRV record | Richard van der Hoff | 2019-01-24 | 1 | -1/+2 |
| | |||||
* | put resolve_service in an object | Richard van der Hoff | 2019-01-22 | 2 | -63/+86 |
| | | | | this makes it easier to stub things out for tests. | ||||
* | Require that service_name be a byte string | Richard van der Hoff | 2019-01-22 | 1 | -4/+4 |
| | | | | it is only ever a bytes now, so let's enforce that. | ||||
* | Kill off matrix_federation_endpoint | Richard van der Hoff | 2019-01-22 | 1 | -1/+0 |
| | | | | this thing is now redundant. | ||||
* | MatrixFederationAgent | Richard van der Hoff | 2019-01-22 | 2 | -0/+147 |
| | | | | | Pull the magic that is currently in matrix_federation_endpoint and friends into an agent-like thing | ||||
* | Refactor and bugfix for resove_service (#4427) | Richard van der Hoff | 2019-01-22 | 2 | -0/+138 |