Skip to content

What is the correct way to propose new OpenSSL symbols to be exported? #23293

Description

@JCMais
  • Version: v10
  • Platform: Windows x64

Is it only on Windows that just a subset of the OpenSSL symbols are exported, or is that something that happens on all platforms? On others platforms the full OpenSSL lib is available?

They were made available on Windows here: b4d4fd9

I'm asking that because I'm currently building an addon that requires OpenSSL, since it uses libcurl and libssh, and the following symbols are currently missing:

OCSP_cert_status_str
OCSP_check_validity
OCSP_basic_verify
OCSP_RESPONSE_free
OCSP_single_get0_status
OCSP_response_get1_basic
OCSP_BASICRESP_free
OCSP_crl_reason_str
OCSP_resp_count
OCSP_response_status
OCSP_response_status_str
OCSP_resp_get0
d2i_OCSP_RESPONSE
SSL_CTX_set_next_proto_select_cb
EVP_ripemd160
VP_cast5_cbc

I found this because of the following other issue: nodejs/node-gyp#1559

Previously I was using my own version of OpenSSL, but that does not work anymore, so now I'm trying to use the one bundled with Node.js.

Activity

  1. Trott commented on Oct 6, 2018

    @Trott
    Member

    @nodejs/crypto

  2. added
    opensslIssues and PRs related to the OpenSSL dependency.
    addonsIssues and PRs related to native addons.
    on Oct 6, 2018
  3. addaleax commented on Oct 6, 2018

    @addaleax
    Member

    I think

    node/node.gyp

    Lines 585 to 598 in bd162b6

    'mkssldef_flags': [
    # Categories to export.
    '-CAES,BF,BIO,DES,DH,DSA,EC,ECDH,ECDSA,ENGINE,EVP,HMAC,MD4,MD5,'
    'PSK,RC2,RC4,RSA,SHA,SHA0,SHA1,SHA256,SHA512,SOCK,STDIO,TLSEXT,'
    'FP_API,TLS1_METHOD,TLS1_1_METHOD,TLS1_2_METHOD,SCRYPT',
    # Defines.
    '-DWIN32',
    # Symbols to filter from the export list.
    '-X^DSO',
    '-X^_',
    '-X^private_',
    # Base generated DEF on zlib.def
    '-Bdeps/zlib/win32/zlib.def'
    ],
    might be the relevant source of truth?

  4. bnoordhuis commented on Oct 8, 2018

    @bnoordhuis
    Member

    That's right. The categories correspond to what's listed in deps/openssl/openssl/util/libssl.num
    and deps/openssl/openssl/util/libcrypto.num.

  5. JCMais commented on Oct 8, 2018

    @JCMais
    ContributorAuthor

    I will be opening a PR against this file to add the new symbols then, going to keep the issue open until I do so.

    Also about the question I mentioned, is that Windows specific?

    Is it only on Windows that just a subset of the OpenSSL symbols are exported, or is that something that happens on all platforms? On others platforms the full OpenSSL lib is available?

    Thanks everyone.

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    addonsIssues and PRs related to native addons.opensslIssues and PRs related to the OpenSSL dependency.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions