Skip to content
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

parallel test is failing with "SSL routines:tls_setup_handshake:no protocols available:/usr/src/debug/openssl/3.1.0-r" #47852

Closed
ArchanaWind opened this issue May 4, 2023 · 3 comments

Comments

@ArchanaWind
Copy link

ArchanaWind commented May 4, 2023

Version

v18.14.2

Platform

Linux 5.15.0-58-generic #64-Ubuntu SMP Thu Jan 5 11:43:13 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Subsystem

No response

What steps will reproduce the bug?

$ cd node
$ /usr/bin/python3 tools/test.py --mode=release parallel

How often does it reproduce? Is there a required condition?

No response

What is the expected behavior? Why is that the expected behavior?

test should get pass

What do you see instead?

=== release test-tls-getprotocol ===
Path: parallel/test-tls-getprotocol
node:events:491
      throw er; // Unhandled 'error' event
      ^

Error: C0075C667A7F0000:error:0A0000BF:SSL routines:tls_setup_handshake:no protocols available:/usr/src/debug/openssl/3.1.0-r0/ssl/statem/statem_lib.c:104:

    at TLSSocket._start (node:_tls_wrap:980:16)
    at Object.onceWrapper (node:events:627:28)
    at TLSSocket.emit (node:events:525:35)
    at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1479:10)
Emitted 'error' event on TLSSocket instance at:
    at emitErrorNT (node:internal/streams/destroy:151:8)
    at emitErrorCloseNT (node:internal/streams/destroy:116:3)
    at process.processTicksAndRejections (node:internal/process/task_queues:82:21) {
  library: 'SSL routines',
  reason: 'no protocols available',
  code: 'ERR_SSL_NO_PROTOCOLS_AVAILABLE'
}

Node.js v18.14.2
Command: /usr/bin/node /usr/lib/nodejs/ptest/test/parallel/test-tls-getprotocol.js

Additional information

No response

@bnoordhuis
Copy link
Member

Did you link node dynamically against openssl (libcrypto & libssl)?

@ArchanaWind
Copy link
Author

ArchanaWind commented May 4, 2023

Yes linked

$ ldd /usr/bin/node
        linux-vdso.so.1 (0x00007ffed49c6000)
        libz.so.1 => /usr/lib/libz.so.1 (0x00007fac07610000)
        libbrotlidec.so.1 => /usr/lib/libbrotlidec.so.1 (0x00007fac07603000)
        libbrotlienc.so.1 => /usr/lib/libbrotlienc.so.1 (0x00007fac07572000)
        libcares.so.2 => /usr/lib/libcares.so.2 (0x00007fac07558000)
        libcrypto.so.3 => /usr/lib/libcrypto.so.3 (0x00007fac05112000)
        libssl.so.3 => /usr/lib/libssl.so.3 (0x00007fac0506d000)
        libicui18n.so.72 => /usr/lib/libicui18n.so.72 (0x00007fac04d51000)
        libicuuc.so.72 => /usr/lib/libicuuc.so.72 (0x00007fac04b57000)
        libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007fac04938000)
        libm.so.6 => /lib/libm.so.6 (0x00007fac0485c000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00007fac0483c000)
        libc.so.6 => /lib/libc.so.6 (0x00007fac04663000)
        /lib/ld-linux-x86-64.so.2 (0x00007fac0762d000)
        libbrotlicommon.so.1 => /usr/lib/libbrotlicommon.so.1 (0x00007fac04640000)
        libicudata.so.72 => /usr/lib/libicudata.so.72 (0x00007fac0286e000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x00007fac0754f000)

@bnoordhuis
Copy link
Member

For a shared library build, you're basically on your own (read: pull request welcome but don't expect anyone to investigate.)

We do test libssl.so in our CI matrix but as there are a gazillion ways to configure openssl, there's simply no way we can test it exhaustively.

@bnoordhuis bnoordhuis closed this as not planned Won't fix, can't repro, duplicate, stale May 5, 2023
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

No branches or pull requests

2 participants