Skip to content

v2.3: QUIC: generate unique server_name for client connections (backport of #7260) #7315

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

Open
wants to merge 1 commit into
base: v2.3
Choose a base branch
from

Conversation

mergify[bot]
Copy link

@mergify mergify bot commented Aug 5, 2025

Problem

  • QUIC clients reuse the same server_name for all connections which can cause QUIC tokens to be mixed up, as they are stored in a big hashmap deep inside Quinn, keyed by server_name
  • This prevents features like address validation and 0RTT from working correctly
  • This is especially an issue with firedancer validators due to a bug in FD. FD interprets invalid tokens incorrectly and ignores all incoming packets instead of reporting an error, thus preventing TPU connections from agave and significantly delaying reconnects.

Summary of Changes

  • Generate server_name based on the SocketAddr of the peer we are connecting to, thus ensuring it is appropriate for the server.

Fixes #7197


This is an automatic backport of pull request #7260 done by Mergify.

generate unique server_name for QUIC connections

(cherry picked from commit eb42788)
@mergify mergify bot requested a review from a team as a code owner August 5, 2025 06:51
@codecov-commenter
Copy link

Codecov Report

❌ Patch coverage is 88.23529% with 2 lines in your changes missing coverage. Please review.
✅ Project coverage is 82.8%. Comparing base (bd39b9b) to head (ce3060b).
⚠️ Report is 1 commits behind head on v2.3.

Additional details and impacted files
@@            Coverage Diff            @@
##             v2.3    #7315     +/-   ##
=========================================
- Coverage    82.8%    82.8%   -0.1%     
=========================================
  Files         850      850             
  Lines      379964   379972      +8     
=========================================
- Hits       314849   314734    -115     
- Misses      65115    65238    +123     
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

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