Skip to content
Snippets Groups Projects
  1. Jan 15, 2021
  2. Dec 16, 2020
  3. Dec 02, 2020
    • Patrick Cloke's avatar
      Apply an IP range blacklist to push and key revocation requests. (#8821) · 30fba621
      Patrick Cloke authored
      Replaces the `federation_ip_range_blacklist` configuration setting with an
      `ip_range_blacklist` setting with wider scope. It now applies to:
      
      * Federation
      * Identity servers
      * Push notifications
      * Checking key validitity for third-party invite events
      
      The old `federation_ip_range_blacklist` setting is still honored if present, but
      with reduced scope (it only applies to federation and identity servers).
      Unverified
      30fba621
  4. Sep 04, 2020
  5. Sep 01, 2020
  6. Jul 23, 2020
  7. Jun 16, 2020
  8. Mar 24, 2020
    • Richard van der Hoff's avatar
      Clean up some LoggingContext stuff (#7120) · 39230d21
      Richard van der Hoff authored
      * Pull Sentinel out of LoggingContext
      
      ... and drop a few unnecessary references to it
      
      * Factor out LoggingContext.current_context
      
      move `current_context` and `set_context` out to top-level functions.
      
      Mostly this means that I can more easily trace what's actually referring to
      LoggingContext, but I think it's generally neater.
      
      * move copy-to-parent into `stop`
      
      this really just makes `start` and `stop` more symetric. It also means that it
      behaves correctly if you manually `set_log_context` rather than using the
      context manager.
      
      * Replace `LoggingContext.alive` with `finished`
      
      Turn `alive` into `finished` and make it a bit better defined.
      Unverified
      39230d21
  9. Mar 17, 2020
  10. Nov 01, 2019
    • Richard van der Hoff's avatar
      Support for routing outbound HTTP requests via a proxy (#6239) · 1cb84c64
      Richard van der Hoff authored
      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.
      Unverified
      1cb84c64
  11. Aug 20, 2019
  12. Aug 15, 2019
    • Erik Johnston's avatar
      Refactor MatrixFederationAgent to retry SRV. · f299c541
      Erik Johnston authored
      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
      f299c541
    • Erik Johnston's avatar
      Retry well known on fail. · e6e136de
      Erik Johnston authored
      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.
      e6e136de
  13. Aug 13, 2019
    • Erik Johnston's avatar
      Retry well-known lookup before expiry. · 17e1e807
      Erik Johnston authored
      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.
      17e1e807
  14. Aug 07, 2019
  15. Aug 06, 2019
    • Erik Johnston's avatar
      Add a lower bound for TTL on well known results. · af9f1c07
      Erik Johnston authored
      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".
      af9f1c07
  16. Jul 31, 2019
  17. Jul 23, 2019
  18. Jul 03, 2019
  19. Jun 24, 2019
  20. Jun 20, 2019
  21. Jun 10, 2019
  22. Jun 06, 2019
    • Richard van der Hoff's avatar
      Stop hardcoding trust of old matrix.org key (#5374) · 9fbb20a5
      Richard van der Hoff authored
      There are a few changes going on here:
      
      * We make checking the signature on a key server response optional: if no
        verify_keys are specified, we trust to TLS to validate the connection.
      
      * We change the default config so that it does not require responses to be
        signed by the old key.
      
      * We replace the old 'perspectives' config with 'trusted_key_servers', which
        is also formatted slightly differently.
      
      * We emit a warning to the logs every time we trust a key server response
        signed by the old key.
      Unverified
      9fbb20a5
  23. Jun 05, 2019
  24. May 13, 2019
  25. May 10, 2019
  26. Apr 25, 2019
  27. Feb 01, 2019
  28. Jan 31, 2019
  29. Jan 30, 2019
  30. Jan 29, 2019
  31. Jan 28, 2019
    • Richard van der Hoff's avatar
      Handle IP literals explicitly · 0fd5b3b5
      Richard van der Hoff authored
      We don't want to be doing .well-known lookups on these guys.
      0fd5b3b5
    • Richard van der Hoff's avatar
      Fix idna and ipv6 literal handling in MatrixFederationAgent (#4487) · d8400191
      Richard van der Hoff authored
      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.
      Unverified
      d8400191
  32. Jan 25, 2019
  33. Jan 24, 2019
Loading