Skip to content
This repository has been archived by the owner on Apr 26, 2024. It is now read-only.

Implement MSC1708 (.well-known lookups for server routing) #4489

Merged
merged 14 commits into from
Jan 29, 2019

Commits on Jan 27, 2019

  1. Fix idna and ipv6 literal handling in MatrixFederationAgent

    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.
    richvdh committed Jan 27, 2019
    Configuration menu
    Copy the full SHA
    a22d4dd View commit details
    Browse the repository at this point in the history
  2. MatrixFederationAgent: factor out routing logic

    This is going to get too big and unmanageable.
    richvdh committed Jan 27, 2019
    Configuration menu
    Copy the full SHA
    a4bc4e9 View commit details
    Browse the repository at this point in the history
  3. Handle IP literals explicitly

    We don't want to be doing .well-known lookups on these guys.
    richvdh committed Jan 27, 2019
    Configuration menu
    Copy the full SHA
    ecdb5bd View commit details
    Browse the repository at this point in the history
  4. changelog

    richvdh committed Jan 27, 2019
    Configuration menu
    Copy the full SHA
    f8e5f30 View commit details
    Browse the repository at this point in the history

Commits on Jan 28, 2019

  1. Configuration menu
    Copy the full SHA
    f3b50e0 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    275aa9d View commit details
    Browse the repository at this point in the history
  3. fixes

    richvdh committed Jan 28, 2019
    Configuration menu
    Copy the full SHA
    a2b1b1f View commit details
    Browse the repository at this point in the history
  4. address review comments

    richvdh committed Jan 28, 2019
    Configuration menu
    Copy the full SHA
    98ba3be View commit details
    Browse the repository at this point in the history
  5. fix failing tests

    richvdh committed Jan 28, 2019
    Configuration menu
    Copy the full SHA
    6f21c3e View commit details
    Browse the repository at this point in the history
  6. changelogs

    richvdh committed Jan 28, 2019
    Configuration menu
    Copy the full SHA
    28dce84 View commit details
    Browse the repository at this point in the history
  7. Use SimpleResolverComplexifier in tests

    two reasons for this. One, it saves a bunch of boilerplate. Two, it squashes
    unicode to IDNA-in-a-`str` (even on python 3) in a way that it turns out we
    rely on to give consistent behaviour between python 2 and 3.
    richvdh committed Jan 28, 2019
    Configuration menu
    Copy the full SHA
    da54bb1 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    f3b9df5 View commit details
    Browse the repository at this point in the history

Commits on Jan 29, 2019

  1. Configuration menu
    Copy the full SHA
    8ced610 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    d9c36a3 View commit details
    Browse the repository at this point in the history