Title: [openssl-4.0.0] - failing tests · Issue #62817 · nodejs/node · GitHub
Open Graph Title: [openssl-4.0.0] - failing tests · Issue #62817 · nodejs/node
X Title: [openssl-4.0.0] - failing tests · Issue #62817 · nodejs/node
Description: Version 24.15.0 Platform Gentoo Linux. Subsystem No response What steps will reproduce the bug? The following tests will fail with OpenSSL 4: === release test-tls-alert-handling === Path: parallel/test-tls-alert-handling node:assert:152 ...
Open Graph Description: Version 24.15.0 Platform Gentoo Linux. Subsystem No response What steps will reproduce the bug? The following tests will fail with OpenSSL 4: === release test-tls-alert-handling === Path: parallel/...
X Description: Version 24.15.0 Platform Gentoo Linux. Subsystem No response What steps will reproduce the bug? The following tests will fail with OpenSSL 4: === release test-tls-alert-handling === Path: parallel/...
Opengraph URL: https://github.com/nodejs/node/issues/62817
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"[openssl-4.0.0] - failing tests","articleBody":"### Version\n\n24.15.0\n\n### Platform\n\n```text\nGentoo Linux.\n```\n\n### Subsystem\n\n_No response_\n\n### What steps will reproduce the bug?\n\nThe following tests will fail with OpenSSL 4:\n\n```\n=== release test-tls-alert-handling === \nPath: parallel/test-tls-alert-handling\nnode:assert:152\n throw new AssertionError(obj);\n ^\n\nAssertionError [ERR_ASSERTION]: Expected values to be strictly equal:\n+ actual - expected\n\n+ 'ERR_SSL_BAD_RECORD_TYPE'\n- 'ERR_SSL_PACKET_LENGTH_TOO_LONG'\n ^\n\n at TLSSocket.\u003canonymous\u003e (/var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/parallel/test-tls-alert-handling.js:44:10)\n at TLSSocket.\u003canonymous\u003e (/var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/common/index.js:479:15)\n at TLSSocket.emit (node:events:521:24)\n at TLSSocket._emitTLSError (node:internal/tls/wrap:1058:10)\n at TLSWrap.onerror (node:internal/tls/wrap:496:11) {\n generatedMessage: true,\n code: 'ERR_ASSERTION',\n actual: 'ERR_SSL_BAD_RECORD_TYPE',\n expected: 'ERR_SSL_PACKET_LENGTH_TOO_LONG',\n operator: 'strictEqual',\n diff: 'simple'\n}\n\nNode.js v24.15.0\nCommand: out/Release/node /var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/parallel/test-tls-alert-handling.js\n\n\n=== release test-tls-client-mindhsize === \nPath: parallel/test-tls-client-mindhsize\nnode:events:487\n throw er; // Unhandled 'error' event\n ^\n\nError [ERR_TLS_DH_PARAM_SIZE]: DH parameter size 2048 is less than 2048\n at TLSSocket.onConnectSecure (node:internal/tls/wrap:1649:17)\n at TLSSocket.emit (node:events:509:28)\n at TLSSocket._finishInit (node:internal/tls/wrap:1102:8)\n at ssl.onhandshakedone (node:internal/tls/wrap:888:12)\nEmitted 'error' event on TLSSocket instance at:\n at TLSSocket.onConnectSecure (node:internal/tls/wrap:1651:10)\n at TLSSocket.emit (node:events:509:28)\n at TLSSocket._finishInit (node:internal/tls/wrap:1102:8)\n at ssl.onhandshakedone (node:internal/tls/wrap:888:12) {\n code: 'ERR_TLS_DH_PARAM_SIZE'\n}\n\nNode.js v24.15.0\nCommand: out/Release/node --expose-internals /var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/parallel/test-tls-client-mindhsize.js\n\n\n=== release test-tls-client-getephemeralkeyinfo === \nPath: parallel/test-tls-client-getephemeralkeyinfo\nnode:assert:152\n throw new AssertionError(obj);\n ^\n\nAssertionError [ERR_ASSERTION]: Expected values to be strictly equal:\n\n2048 !== 3072\n\n at TLSSocket.\u003canonymous\u003e (/var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/parallel/test-tls-client-getephemeralkeyinfo.js:63:14)\n at TLSSocket.\u003canonymous\u003e (/var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/common/index.js:479:15)\n at Object.onceWrapper (node:events:630:28)\n at TLSSocket.emit (node:events:521:24)\n at TLSSocket.onConnectSecure (node:internal/tls/wrap:1693:8)\n at TLSSocket.emit (node:events:509:28)\n at TLSSocket._finishInit (node:internal/tls/wrap:1102:8)\n at ssl.onhandshakedone (node:internal/tls/wrap:888:12) {\n generatedMessage: true,\n code: 'ERR_ASSERTION',\n actual: 2048,\n expected: 3072,\n operator: 'strictEqual',\n diff: 'simple'\n}\n\nNode.js v24.15.0\nCommand: out/Release/node /var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/parallel/test-tls-client-getephemeralkeyinfo.js\n\n\n=== release test-tls-ecdh-multiple === \nPath: parallel/test-tls-ecdh-multiple\nnode:internal/tls/secure-context:252\n context.setECDHCurve(ecdhCurve);\n ^\n\nError: Failed to set ECDH curve\n at configSecureContext (node:internal/tls/secure-context:252:11)\n at Object.createSecureContext (node:internal/tls/common:113:3)\n at Server.setSecureContext (node:internal/tls/wrap:1515:27)\n at new Server (node:internal/tls/wrap:1379:8)\n at Object.createServer (node:internal/tls/wrap:1414:10)\n at Object.\u003canonymous\u003e (/var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/parallel/test-tls-ecdh-multiple.js:37:20)\n at Module._compile (node:internal/modules/cjs/loader:1830:14)\n at Object..js (node:internal/modules/cjs/loader:1961:10)\n at Module.load (node:internal/modules/cjs/loader:1553:32)\n at Module._load (node:internal/modules/cjs/loader:1355:12) {\n code: 'ERR_CRYPTO_OPERATION_FAILED'\n}\n\nNode.js v24.15.0\nCommand: out/Release/node /var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/parallel/test-tls-ecdh-multiple.js\n\n\n=== release test-tls-dhe === \nPath: parallel/test-tls-dhe\nnode:internal/assert/utils:77\n throw err;\n ^\n\nAssertionError [ERR_ASSERTION]: The expression evaluated to a falsy value:\n\n assert(stdout.includes(`Cipher : ${expectedCipher}`))\n\n at /var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/parallel/test-tls-dhe.js:92:7\n at /var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/common/index.js:444:17\n at /var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/common/index.js:479:15\n at ChildProcess.exithandler (node:child_process:410:7)\n at ChildProcess.emit (node:events:509:28)\n at maybeClose (node:internal/child_process:1124:16)\n at ChildProcess._handle.onexit (node:internal/child_process:306:5) {\n generatedMessage: true,\n code: 'ERR_ASSERTION',\n actual: false,\n expected: true,\n operator: '==',\n diff: 'simple'\n}\n\nNode.js v24.15.0\nCommand: out/Release/node --no-warnings --expose-internals /var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/parallel/test-tls-dhe.js\n\n\n=== release test-tls-error-stack === \nPath: parallel/test-tls-error-stack\nnode:assert:604\n throw err;\n ^\n\nAssertionError [ERR_ASSERTION]: The validation function is expected to return \"true\". Received false\n\nCaught error:\n\nError [ERR_CRYPTO_CUSTOM_ENGINE_NOT_SUPPORTED]: Custom engines not supported by this OpenSSL\n at Object.\u003canonymous\u003e (/var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/parallel/test-tls-error-stack.js:11:8)\n at Module._compile (node:internal/modules/cjs/loader:1830:14)\n at Object..js (node:internal/modules/cjs/loader:1961:10)\n at Module.load (node:internal/modules/cjs/loader:1553:32)\n at Module._load (node:internal/modules/cjs/loader:1355:12)\n at wrapModuleLoad (node:internal/modules/cjs/loader:255:19)\n at Module.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:154:5)\n at node:internal/main/run_main_module:33:47 {\n generatedMessage: true,\n code: 'ERR_ASSERTION',\n actual: Error [ERR_CRYPTO_CUSTOM_ENGINE_NOT_SUPPORTED]: Custom engines not supported by this OpenSSL\n at configSecureContext (node:internal/tls/secure-context:298:13)\n at Object.createSecureContext (node:internal/tls/common:113:3)\n at /var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/parallel/test-tls-error-stack.js:12:7\n at getActual (node:assert:611:5)\n at ok.throws (node:assert:759:24)\n at Object.\u003canonymous\u003e (/var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/parallel/test-tls-error-stack.js:11:8)\n at Module._compile (node:internal/modules/cjs/loader:1830:14)\n at Object..js (node:internal/modules/cjs/loader:1961:10)\n at Module.load (node:internal/modules/cjs/loader:1553:32)\n at Module._load (node:internal/modules/cjs/loader:1355:12) {\n code: 'ERR_CRYPTO_CUSTOM_ENGINE_NOT_SUPPORTED'\n },\n expected: [Function (anonymous)],\n operator: 'throws',\n diff: 'simple'\n}\n\nNode.js v24.15.0\nCommand: out/Release/node /var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/parallel/test-tls-error-stack.js\n\n\n=== release test-tls-junk-server === \nPath: parallel/test-tls-junk-server\nnode:assert:885\n throw err;\n ^\n\nAssertionError [ERR_ASSERTION]: The input did not match the regular expression /packet length too long/. Input:\n\n'write EPROTO 0099198CD17F0000:error:0A00010B:SSL routines:tls_validate_record_header:wrong version number:../openssl-4.0.0/ssl/record/methods/tlsany_meth.c:66:\\n'\n\n at ClientRequest.\u003canonymous\u003e (/var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/parallel/test-tls-junk-server.js:31:12)\n at ClientRequest.\u003canonymous\u003e (/var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/common/index.js:479:15)\n at Object.onceWrapper (node:events:631:26)\n at ClientRequest.emit (node:events:509:28)\n at emitErrorEvent (node:_http_client:109:11)\n at TLSSocket.socketErrorListener (node:_http_client:593:5)\n at TLSSocket.emit (node:events:509:28)\n at emitErrorNT (node:internal/streams/destroy:170:8)\n at emitErrorCloseNT (node:internal/streams/destroy:129:3)\n at process.processTicksAndRejections (node:internal/process/task_queues:90:21) {\n generatedMessage: true,\n code: 'ERR_ASSERTION',\n actual: 'write EPROTO 0099198CD17F0000:error:0A00010B:SSL routines:tls_validate_record_header:wrong version number:../openssl-4.0.0/ssl/record/methods/tlsany_meth.c:66:\\n',\n expected: /packet length too long/,\n operator: 'match',\n diff: 'simple'\n}\n\nNode.js v24.15.0\nCommand: out/Release/node /var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/parallel/test-tls-junk-server.js\n\n\n=== release test-tls-ocsp-callback === \nPath: parallel/test-tls-ocsp-callback\n/var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/parallel/test-tls-ocsp-callback.js:93\n assert.strictEqual(resp.toString(), testOptions.response);\n ^\n\nTypeError: Cannot read properties of null (reading 'toString')\n at TLSSocket.\u003canonymous\u003e (/var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/parallel/test-tls-ocsp-callback.js:93:33)\n at TLSSocket.\u003canonymous\u003e (/var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/common/index.js:479:15)\n at TLSSocket.emit (node:events:509:28)\n at TLSWrap.onocspresponse (node:internal/tls/wrap:464:22)\n\nNode.js v24.15.0\nCommand: out/Release/node /var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/parallel/test-tls-ocsp-callback.js\n\n\n=== release test-tls-set-ciphers-error === \nPath: parallel/test-tls-set-ciphers-error\nnode:assert:152\n throw new AssertionError(obj);\n ^\n\nAssertionError [ERR_ASSERTION]: Missing expected exception.\n at Object.\u003canonymous\u003e (/var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/parallel/test-tls-set-ciphers-error.js:17:10)\n at Module._compile (node:internal/modules/cjs/loader:1830:14)\n at Object..js (node:internal/modules/cjs/loader:1961:10)\n at Module.load (node:internal/modules/cjs/loader:1553:32)\n at Module._load (node:internal/modules/cjs/loader:1355:12)\n at wrapModuleLoad (node:internal/modules/cjs/loader:255:19)\n at Module.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:154:5)\n at node:internal/main/run_main_module:33:47 {\n generatedMessage: false,\n code: 'ERR_ASSERTION',\n actual: undefined,\n expected: /no[_ ]cipher[_ ]match/i,\n operator: 'throws',\n diff: 'simple'\n}\n\nNode.js v24.15.0\nCommand: out/Release/node /var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/parallel/test-tls-set-ciphers-error.js\n\n\n[02:08|% 100|+ 4082|- 9]: Done \n\nFailed tests:\nout/Release/node /var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/parallel/test-tls-alert-handling.js\nout/Release/node --expose-internals /var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/parallel/test-tls-client-mindhsize.js\nout/Release/node /var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/parallel/test-tls-client-getephemeralkeyinfo.js\nout/Release/node /var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/parallel/test-tls-ecdh-multiple.js\nout/Release/node --no-warnings --expose-internals /var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/parallel/test-tls-dhe.js\nout/Release/node /var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/parallel/test-tls-error-stack.js\nout/Release/node /var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/parallel/test-tls-junk-server.js\nout/Release/node /var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/parallel/test-tls-ocsp-callback.js\nout/Release/node /var/tmp/portage/net-libs/nodejs-24.15.0/work/node-v24.15.0/test/parallel/test-tls-set-ciphers-error.js\n```\n\n### How often does it reproduce? Is there a required condition?\n\nConsistent w/ openssl 4\n\n### What is the expected behavior? Why is that the expected behavior?\n\nTests should pass\n\n### What do you see instead?\n\nrelevant test log above\n\n### Additional information\n\nNot expecting a quick fix, just reporting what I noticed downstream :)","author":{"url":"https://github.com/Kangie","@type":"Person","name":"Kangie"},"datePublished":"2026-04-19T04:36:20.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":3},"url":"https://github.com/62817/node/issues/62817"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:2fb60d36-89ed-2d53-42e8-1b9dc9ca1fc2 |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | ED96:B05E4:4B042C:670D2D:6A4C2FB8 |
| html-safe-nonce | a8182edc8ef8151283e52306f63fe3fe517caa5d32c13a1d630ca34377216acd |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJFRDk2OkIwNUU0OjRCMDQyQzo2NzBEMkQ6NkE0QzJGQjgiLCJ2aXNpdG9yX2lkIjoiMzc5Nzc1Njg2MTExODk1MTM1MyIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9 |
| visitor-hmac | 00939ef18d7a4028701afff2ef65e3e936294fcb354ecb635d83883e1e5bfa31 |
| hovercard-subject-tag | issue:4289923010 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/nodejs/node/62817/issue_layout |
| twitter:image | https://opengraph.githubassets.com/b33095467948e89e2122bddf45078d9fba91412f3b1010f2ad4fafdb600d912c/nodejs/node/issues/62817 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/b33095467948e89e2122bddf45078d9fba91412f3b1010f2ad4fafdb600d912c/nodejs/node/issues/62817 |
| og:image:alt | Version 24.15.0 Platform Gentoo Linux. Subsystem No response What steps will reproduce the bug? The following tests will fail with OpenSSL 4: === release test-tls-alert-handling === Path: parallel/... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | Kangie |
| hostname | github.com |
| expected-hostname | github.com |
| None | 1b6b16d04026f131a36d57e3b01d0f4d26a51800edf48bf5ed0256e0ac905511 |
| turbo-cache-control | no-preview |
| go-import | github.com/nodejs/node git https://github.com/nodejs/node.git |
| octolytics-dimension-user_id | 9950313 |
| octolytics-dimension-user_login | nodejs |
| octolytics-dimension-repository_id | 27193779 |
| octolytics-dimension-repository_nwo | nodejs/node |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 27193779 |
| octolytics-dimension-repository_network_root_nwo | nodejs/node |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 9ee13484b32cf23e15fde191da4c9aa47d41201c |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width