Skip to content

[v26.x backport] crypto: remove obsolete BoringSSL shims and use available APIs - #65483

Open
panva wants to merge 3 commits into
nodejs:v26.x-stagingfrom
panva:backport-65423-26.x
Open

[v26.x backport] crypto: remove obsolete BoringSSL shims and use available APIs#65483
panva wants to merge 3 commits into
nodejs:v26.x-stagingfrom
panva:backport-65423-26.x

Conversation

@panva

@panva panva commented Aug 22, 2026

Copy link
Copy Markdown
Member

Backports #65423 to v26.x, this is a clean backport with one caveat, it overrides the boringssl version used by test-shared.yml to match that on main at the time #65423 landed.

@panva
panva requested a review from aduh95 August 22, 2026 11:53
@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

Review requested:

  • @nodejs/crypto
  • @nodejs/security-wg

@nodejs-github-bot nodejs-github-bot added lib / src Issues and PRs related to general changes in the lib or src directory. needs-ci PRs that need a full CI run. v26.x Issues that can be reproduced on v26.x or PRs targeting the v26.x-staging branch. labels Aug 22, 2026
@github-actions

This comment was marked as outdated.

@codecov

codecov Bot commented Aug 22, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 90.22%. Comparing base (ca26282) to head (bc52379).
⚠️ Report is 1 commits behind head on v26.x-staging.

Additional details and impacted files
@@                Coverage Diff                @@
##           v26.x-staging   #65483      +/-   ##
=================================================
- Coverage          90.24%   90.22%   -0.02%     
=================================================
  Files                729      729              
  Lines             242760   242760              
  Branches           46044    46050       +6     
=================================================
- Hits              219073   219041      -32     
- Misses             15133    15144      +11     
- Partials            8554     8575      +21     
Files with missing lines Coverage Δ
src/crypto/crypto_dh.cc 65.66% <ø> (ø)
src/crypto/crypto_rsa.cc 64.21% <ø> (ø)

... and 38 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

panva added 3 commits August 23, 2026 17:09
Signed-off-by: Filip Skokan <panva.ip@gmail.com>
BoringSSL implements OPENSSL_zalloc and BN_secure_new and provides
compatible secure heap status stubs. Use the common code paths.

Remove ClientHello helpers left unused by the early callback migration
and require the fixed ML-KEM private-key import error.

Signed-off-by: Filip Skokan <panva.ip@gmail.com>
PR-URL: nodejs#65423
Reviewed-By: Tim Perry <pimterry@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Use BoringSSL's current RSA and DH validation results instead of
maintaining backend-specific prechecks and collapsing key errors.

Report negotiated TLS groups and the documented zero security level
through BoringSSL's compatibility APIs.

Signed-off-by: Filip Skokan <panva.ip@gmail.com>
PR-URL: nodejs#65423
Reviewed-By: Tim Perry <pimterry@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
@panva
panva force-pushed the backport-65423-26.x branch from b7ceb4e to bc52379 Compare August 23, 2026 15:09
@github-actions

Copy link
Copy Markdown
Contributor
Platform Number of requisites Proportion of new derivations
x86_64-linux 459 -> 459 => no changes 3 / 459 = 0.6%
aarch64-linux 460 -> 460 => no changes 3 / 460 = 0.6%
x86_64-darwin 397 -> 397 => no changes 3 / 397 = 0.7%
aarch64-darwin 399 -> 399 => no changes 3 / 399 = 0.7%
Total 1715 -> 1715 => no changes 12 / 1715 = 0.6%
Changelog
@@ -87,12 +87,12 @@
-/nix/store/1k5vfgzqyn72h74v6ha9fihh7qbjrik0-boringssl-0.20260413.0 (aarch64-darwin)
-/nix/store/k7hvxfz5mi1jcnzvfgmadpj61vcc2w0k-boringssl-0.20260413.0 (aarch64-linux)
-/nix/store/pxmk721zyiw3n872vqiiz5cb05skmb34-boringssl-0.20260413.0 (x86_64-darwin)
-/nix/store/n9g5v0naw03kxri26nm4zj0q85ypa3f6-boringssl-0.20260413.0 (x86_64-linux)
-/nix/store/khfg0xszkmhb10fk7ghkx23b76nb1n8i-boringssl-0.20260413.0-bin (aarch64-darwin)
-/nix/store/f6qciy5r9706hxd78wajsn92k27wnrq4-boringssl-0.20260413.0-bin (aarch64-linux)
-/nix/store/jiz39z5bafzhy9qzq5d6gndi320p6gli-boringssl-0.20260413.0-bin (x86_64-darwin)
-/nix/store/rs4yhnrd1v39wjnll2ahdpx9cda3nakn-boringssl-0.20260413.0-bin (x86_64-linux)
-/nix/store/sfm292hxsmcbb49r35ww86wnhdp8x6vm-boringssl-0.20260413.0-dev (aarch64-darwin)
-/nix/store/i6ccv7jpy8gb35nnhaj0cdv8blkg1w4r-boringssl-0.20260413.0-dev (aarch64-linux)
-/nix/store/bzacx7cjjp1is1xh770bjid1ap15h66p-boringssl-0.20260413.0-dev (x86_64-darwin)
-/nix/store/2b288h3ihsdmm24lmz5wbjx89ib8jd6v-boringssl-0.20260413.0-dev (x86_64-linux)
+/nix/store/h0nnbhvw042c05840krknzp2gfnyan3n-boringssl-0.20260803.0 (aarch64-darwin)
+/nix/store/22rfr95xasl2rqqr0aiimqkd074nrgvp-boringssl-0.20260803.0 (aarch64-linux)
+/nix/store/lyjrr5k51c80cj8dgdhr6zgkbp4nmd7i-boringssl-0.20260803.0 (x86_64-darwin)
+/nix/store/zpda1sh11x0l9zf2jqyj6j33gk650wdy-boringssl-0.20260803.0 (x86_64-linux)
+/nix/store/kjvgsigj0lh1zc7lnyh93hqlv433z8pg-boringssl-0.20260803.0-bin (aarch64-darwin)
+/nix/store/f105al617fdlhhjm02919xj22dgyn552-boringssl-0.20260803.0-bin (aarch64-linux)
+/nix/store/s0zf1zkbjqgfpkfin8f1j3b0l6xrii90-boringssl-0.20260803.0-bin (x86_64-darwin)
+/nix/store/x3b5va756lzjpgkxvfkvfx23066hnmk2-boringssl-0.20260803.0-bin (x86_64-linux)
+/nix/store/i78kyxhs512a5d96si4lx5zvm76gq363-boringssl-0.20260803.0-dev (aarch64-darwin)
+/nix/store/6zz04nbxwxlz2m04lb1vk1xa79i1rz70-boringssl-0.20260803.0-dev (aarch64-linux)
+/nix/store/nqb5r8axdf6cnpldyv8ncd57ydm4mz18-boringssl-0.20260803.0-dev (x86_64-darwin)
+/nix/store/ilzac8c0icc8v48fzmmsjqam4rwsh7gp-boringssl-0.20260803.0-dev (x86_64-linux)

@aduh95 aduh95 added author ready PRs that have at least one approval, no outstanding review comments, and a CI started. request-ci Add this label to start a Jenkins CI on a PR. labels Aug 24, 2026
@github-actions github-actions Bot removed the request-ci Add this label to start a Jenkins CI on a PR. label Aug 24, 2026
@nodejs-github-bot

This comment was marked as outdated.

@nodejs-github-bot

This comment was marked as outdated.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

author ready PRs that have at least one approval, no outstanding review comments, and a CI started. lib / src Issues and PRs related to general changes in the lib or src directory. needs-ci PRs that need a full CI run. v26.x Issues that can be reproduced on v26.x or PRs targeting the v26.x-staging branch.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants