Skip to content

fix: install the rustls aws-lc-rs crypto provider at startup - #1355

Merged
petarjuki7 merged 2 commits into
sigp:unstablefrom
petarjuki7:fix/rustls-crypto-provider
Oct 22, 2026
Merged

petarjuki7 merged 2 commits into
sigp:unstablefrom
petarjuki7:fix/rustls-crypto-provider

Conversation

@petarjuki7

@petarjuki7 petarjuki7 commented Oct 22, 2026 •

Copy link
Copy Markdown
Member

Problem, Evidence, and Context

  • v1.4.0 crashes at startup on nodes that use a wss:// execution endpoint: Could not automatically determine the process-level CryptoProvider from Rustls crate features.
  • Found on the Sepolia canary. The rust-libp2p update in chore(deps): update Lighthouse to v8.3.0 #1349 enables rustls' aws-lc-rs backend (through libp2p-quic) alongside ring, so rustls can no longer pick a default.

Change Overview

  • Install aws-lc-rs as the rustls crypto provider at startup.

Validation

  • Built v1.4.0 and this branch and ran both against a public Sepolia wss:// endpoint: v1.4.0 panics in the event syncer; this branch connects and starts historical sync.
  • make cargo-fmt-check, make lint, make test pass.

Rollback

  • Revert this PR.

The rust-libp2p update in v1.4.0 enables rustls' aws-lc-rs backend
(through libp2p-quic) alongside ring. With both compiled in, rustls
cannot choose a process-wide default and panics when the execution-layer
websocket opens a TLS connection, so nodes using a wss:// endpoint
crash at startup. Install ring explicitly, the backend used before.
@petarjuki7
petarjuki7 requested a review from dknopik October 22, 2026 16:05
@petarjuki7 petarjuki7 self-assigned this Oct 22, 2026
Match Lighthouse, which installs aws-lc-rs as the process-wide default.
@petarjuki7 petarjuki7 changed the title fix: install the rustls ring crypto provider at startup fix: install the rustls aws-lc-rs crypto provider at startup Oct 22, 2026

@dknopik dknopik left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

lgtm

@codecov-commenter

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 81.21%. Comparing base (2848ec5) to head (55578e0).

Additional details and impacted files
@@            Coverage Diff            @@
##           unstable    #1355   +/-   ##
=========================================
  Coverage     81.21%   81.21%           
=========================================
  Files           180      180           
  Lines         41831    41834    +3     
=========================================
+ Hits          33973    33976    +3     
  Misses         7858     7858           
Flag Coverage Δ
rust 81.21% <100.00%> (+<0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@mergify

mergify Bot commented Oct 22, 2026 •

Copy link
Copy Markdown

Queued — the merge queue status continues in this comment ↓.

@mergify

mergify Bot commented Oct 22, 2026 •

Copy link
Copy Markdown

Merge Queue Status

This pull request spent 29 minutes 59 seconds in the queue, including 27 minutes 31 seconds running CI.

Reason

Pull request #1355 has been dequeued

GitHub refused to merge the pull request. Repository rule violations found

Secret scanning is not enabled. Please enable secret scanning. This is usually enforced by a branch protection or ruleset rule.

Hint

You should look at the reason for the failure and decide if the pull request needs to be fixed or if you want to requeue it.
If you do update this pull request, it will automatically be requeued once the queue conditions match again.
If you think this was a flaky issue instead, you can requeue the pull request, without updating it, by posting a @mergifyio queue comment.

Required conditions to merge

Tick the box to put this pull request back in the merge queue (same as @mergifyio queue).

  • Requeue this pull request

@mergify mergify Bot added the queued label Oct 22, 2026
@mergify mergify Bot mentioned this pull request Oct 22, 2026
13 of 17 tasks
@mergify mergify Bot added dequeued and removed queued labels Oct 22, 2026
@petarjuki7
petarjuki7 merged commit 8263086 into sigp:unstable Oct 22, 2026
30 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants