Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] Add experimental QUIC support. #862

Closed
wants to merge 14 commits into from
Closed

Conversation

twittner
Copy link
Contributor

Continuation of #563, based on picoquic-rs.

cc: @bkchr

@ghost ghost assigned twittner Jan 16, 2019
@ghost ghost added the in progress label Jan 16, 2019
Since `QuicConfig::dial` consumes the context we better keep a copy in
the future and subsequently the stream muxer to make sure it is not
dropped prematurely. For listening it is assumed that the listener
outlives the connections, hence we do not copy the context from a
listening stream into each stream muxer.
@tomaka tomaka mentioned this pull request Jan 17, 2019
@twittner twittner changed the title Add experimental QUIC support. [WIP] Add experimental QUIC support. Jan 21, 2019
@seamlik
Copy link

seamlik commented Feb 7, 2019

Why not quinn?

@twittner
Copy link
Contributor Author

twittner commented Feb 11, 2019

Because most of quinn's types are !Send.

@Demi-Marie
Copy link
Contributor

@twittner This has now been fixed, if I understand correctly. Furthermore, we can also use the quinn-proto crate, which is a pure state machine.

@burdges
Copy link

burdges commented Nov 17, 2019

We can likely place the expected remote cert by an ImOnline key or whatever into rustls::ClientConfig::root_store. Validators would provision these certs to their sentry nodes. If we need more then rusttls has several traits for certificate verification, but probably not required.

@Demi-Marie
Copy link
Contributor

QUIC is not only a transport, but also a multiplexer. Does this protocol handle that?

/// task executor
executor: Exec,
/// RSA private key
private_key: Vec<u8>,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should not put secret keys in a Vec.

@tomaka
Copy link
Member

tomaka commented Nov 18, 2019

@demimarie-parity This is an old branch that wasn't even finished and that is kept alive just for reference (to get inspiration from). There's no point in commenting.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants