Skip to content

deps: update OpenSSL to 3.0.17 #58097

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 3 commits into
base: main
Choose a base branch
from

Conversation

nodejs-github-bot
Copy link
Collaborator

@nodejs-github-bot nodejs-github-bot commented May 1, 2025

This is an automated update of OpenSSL to 3.0.17.

@nodejs-github-bot nodejs-github-bot added dependencies Pull requests that update a dependency file. openssl Issues and PRs related to the OpenSSL dependency. labels May 1, 2025
@nodejs-github-bot
Copy link
Collaborator Author

Review requested:

  • @nodejs/security-wg

@nodejs-github-bot nodejs-github-bot added the needs-ci PRs that need a full CI run. label May 1, 2025
@richardlau richardlau added the blocked PRs that are blocked by other issues or PRs. label May 1, 2025
@richardlau
Copy link
Member

FYI I'm testing the automation.

@richardlau
Copy link
Member

richardlau commented May 1, 2025

This was opened by https://github.com/nodejs/node/actions/runs/14779389322/job/41494768590, running on the branch for #58098.

@richardlau richardlau changed the title deps: update OpenSSL to 3.5.0 [do not land] deps: update OpenSSL to 3.5.0 May 1, 2025
@richardlau
Copy link
Member

Marked [do not land] (and labelled blocked). The intention is to land #58099 and #58100 and then run the updater workflow from main to do the proper upgrade (e.g. in this PR the commits from #58098 have been squashed into the first commit, which isn't what we want).

@nodejs-github-bot
Copy link
Collaborator Author

@richardlau
Copy link
Member

richardlau commented May 2, 2025

CI: https://ci.nodejs.org/job/node-test-pull-request/66533/

https://ci.nodejs.org/job/node-test-commit-linux/nodes=rhel8-x64/64390/console

02:00:16 ../deps/openssl/config/archs/linux-x86_64/asm/crypto/bn/rsaz-2k-avxifma.s: Assembler messages:
02:00:16 ../deps/openssl/config/archs/linux-x86_64/asm/crypto/bn/rsaz-2k-avxifma.s:85: Error: unsupported instruction `vpmadd52luq'
02:00:16 ../deps/openssl/config/archs/linux-x86_64/asm/crypto/bn/rsaz-2k-avxifma.s:86: Error: unsupported instruction `vpmadd52luq'
...

So the build failures are a surprise as I wasn't seeing those locally (Linux x64). On further investigation it looks like some of the config files, specifically some of the assembly *.s files, are different when run on GitHub workflow vs generating them locally with deps/openssl/config/Dockerfile.

For example, compare

I think this is partly due to openssl/openssl#25751 and e.g.

# TODO: Find out the version of NASM that supports VEX-encoded AVX-IFMA instructions
if (`$ENV{CC} -Wa,-v -c -o /dev/null -x assembler /dev/null 2>&1`
=~ /GNU assembler version ([2-9]\.[0-9]+)/) {
$avxifma = ($1>=2.40);
}
which is sensitive to GNU assembler version.

The version of GNU assembler in the Dockerfile (Ubuntu 20.04) is 2.34. My RHEL 9 build environment has GNU assembler 2.38. Both of those are less than 2.40. Ubuntu 24.04 appears to have GNU assembler 2.42, which passes the above check. The build in Jenkins will be running with different versions of GNU assembler depending on the installed version of binutils.

@nodejs-github-bot nodejs-github-bot changed the title [do not land] deps: update OpenSSL to 3.5.0 deps: update OpenSSL to 3.0.17 Jul 6, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
blocked PRs that are blocked by other issues or PRs. dependencies Pull requests that update a dependency file. needs-ci PRs that need a full CI run. openssl Issues and PRs related to the OpenSSL dependency.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants