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

quic: don't support draft versions #3395

Open
marten-seemann opened this issue Jan 27, 2023 · 3 comments
Open

quic: don't support draft versions #3395

marten-seemann opened this issue Jan 27, 2023 · 3 comments
Assignees
Labels
difficulty:easy getting-started Issues that can be tackled if you don't know the internals of libp2p very well help wanted

Comments

@marten-seemann
Copy link

marten-seemann commented Jan 27, 2023

rust-libp2p's QUIC implementation currently supports a long list of versions (obtained by eliciting a Version Negotiation packet): [v1 draft-29 0xff00001e 0xff00001f 0xff000020 0xff000021 0xff000022]

The 0xff... versions are QUIC draft versions (see https://github.com/quicwg/base-drafts/wiki/QUIC-Versions).

We've never deployed any version other than v1 and draft-29 in libp2p, so there's no reason to enable support for these versions.

Overarching tracking issue #2883.

@mxinden
Copy link
Member

mxinden commented Aug 31, 2023

Thank you @marten-seemann for raising and documenting this.

I suggest we drop support for draft-29 along with all other draft versions. See same deprecation on the go-libp2p side libp2p/go-libp2p#2369.

Steps:

  1. Deprecate libp2p_quic::Config::support_draft_29.
  2. Remove libp2p_quic::Config::support_draft_29 and always set endpoint_config.supported_versions to vec![1].
    let mut endpoint_config = quinn::EndpointConfig::default();
    if !support_draft_29 {
    endpoint_config.supported_versions(vec![1]);
    }

Contributions from the community would be very welcome. Please post here in case you want to pick this up.

@mxinden mxinden added difficulty:easy help wanted getting-started Issues that can be tackled if you don't know the internals of libp2p very well labels Aug 31, 2023
@thomaseizinger thomaseizinger changed the title quic: supported versions quic: don't support draft versions' Sep 12, 2023
@thomaseizinger thomaseizinger changed the title quic: don't support draft versions' quic: don't support draft versions Sep 12, 2023
@erwin-kok
Copy link

@mxinden @marten-seemann I would like to work on this, please assign to me.

@thomaseizinger
Copy link
Contributor

@mxinden @marten-seemann I would like to work on this, please assign to me.

Done! Thank you for your help :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
difficulty:easy getting-started Issues that can be tackled if you don't know the internals of libp2p very well help wanted
Projects
None yet
Development

No branches or pull requests

4 participants