-
Notifications
You must be signed in to change notification settings - Fork 186
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat(iroh-relay)!: add a QUIC server for QUIC address discovery to th…
…e iroh relay. (#2965) ## Description This PR adds a QUIC endpoint to the relay server that can do QUIC address discovery. It also contains structs/functions for properly doing the Client side interaction for this process. Also, this adjust the `RelayNode` to include configuration on how to speak to the QUIC endpoint on the relay server. QUIC is disabled by default and requires a `TlsConfig` to be configured in order to work. closes #2964 ## Breaking Changes - `iroh_base::relay_map::RelayNode` now has field `quic` that takes a `Option<iroh_base::relay_map::QuicConfig>` - `iroh::test_utils::run_relay_server_with(stun: Option<StunConfig>)` => `iroh::test_utils::run_relay_server_with(stun: Option<StunConfig>, quic: bool)` - when `quic` is `true`, it will start a quic server for QUIC address discovery, that has self signed tls certs for testing. - `iroh_relay::server::ServerConfig` has field `quic` that takes a `Option<iroh_relay::server::QuicConfig>` - `iroh_relay::server::TlsConfig.quic_bind_addr` is a new field that takes a `SocketAddr` - `iroh_relay::server::TlsConfig.server_config` is a new field that takes a `rustls::ServerConfig` - field `config` has been removed from variant `iroh_relay::server::CertConfig::LetsEncrypt` - variant `iroh_relay::server::CertConfig::LetsEncrypt` has a new field `state` that takes a `tokio_rustls_acme::AcmeState<EC, EA>` - variant `iroh_relay::server::CertConfig::Manual` no longer has field `private_key` ## Change checklist - [x] Self-review. - [x] Documentation updates following the [style guide](https://rust-lang.github.io/rfcs/1574-more-api-documentation-conventions.html#appendix-a-full-conventions-text), if relevant. - [x] Tests if relevant. - [x] All breaking changes documented. --------- Co-authored-by: “ramfox” <“[email protected]”>
- Loading branch information
Showing
16 changed files
with
860 additions
and
220 deletions.
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
[[derp_nodes]] | ||
[[relay_nodes]] | ||
url = "https://foo.bar" | ||
stun_only = false | ||
stun_port = 1244 | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.