Skip to content

Conversation

@Akindotcome
Copy link

Motivation: QUIC (RFC 9000) is common on UDP/443. This adds a small, dependency-free core for long-header parsing and a Dshell Decoder that uses it.

What’s included:

  • dshell/plugins/quic/_helpers.py:
    is_quic_long_header(), parse_quic_long_header() (returns QuicLongHeaderMeta with header_form="long", version, DCID, SCID). Defensive; never raises.
  • tests/test_quic_helpers.py: 3 unit tests (happy-path, non-QUIC rejection, malformed length safety). No external deps → CI-friendly.
  • dshell/plugins/quic/quic.py: Dshell Decoder that filters UDP ports (default 443; --ports to override) and writes rows: ts,src,sport,dst,dport,version,dcid,scid,cid_len.

Design notes: Keep helpers import-light so unit tests run on any CI; the Decoder integrates with Dshell’s pipeline and uses the helpers internally.

Local results:
python -m pytest -q tests/test_quic_helpers.py → all tests pass.

@Akindotcome
Copy link
Author

@kstrauser @ThomasWunderlich @ekilmer @DeKrych
Hi, I am still hoping my PR gets reviewed.

@dev195
Copy link
Contributor

dev195 commented Oct 15, 2025

Due to the government shutdown, the process is paused. Thank you for the patience.

@Akindotcome
Copy link
Author

@dev195
Thank you for the reply.

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.

2 participants