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

Support OpenSSL 3 #114

Open
chenrui333 opened this issue Oct 22, 2023 · 0 comments
Open

Support OpenSSL 3 #114

chenrui333 opened this issue Oct 22, 2023 · 0 comments

Comments

@chenrui333
Copy link

chenrui333 commented Oct 22, 2023

OpenSSL 1.1.1 is already EOL this Sep, https://www.openssl.org/blog/blog/2023/09/11/eol-111/, need to upgrade the build to use OpenSSL 3

nassl/build_tasks.py

Lines 298 to 301 in cedaa5f

class ModernOpenSslBuildConfig(OpenSslBuildConfig):
@property
def _openssl_git_tag(self) -> str:
return "OpenSSL_1_1_1t"


error build log
${LDCMD:-cc} -arch arm64 -I/opt/homebrew/include -I/opt/homebrew/opt/openssl@3/include -L/opt/homebrew/lib -L/opt/homebrew/opt/openssl@3/lib -fPIC -L. -Wl,-search_paths_first  \
		-o apps/openssl apps/asn1pars.o apps/ca.o apps/ciphers.o apps/cms.o apps/crl.o apps/crl2p7.o apps/dgst.o apps/dhparam.o apps/dsa.o apps/dsaparam.o apps/ec.o apps/ecparam.o apps/enc.o apps/engine.o apps/errstr.o apps/gendsa.o apps/genpkey.o apps/genrsa.o apps/nseq.o apps/ocsp.o apps/openssl.o apps/passwd.o apps/pkcs12.o apps/pkcs7.o apps/pkcs8.o apps/pkey.o apps/pkeyparam.o apps/pkeyutl.o apps/prime.o apps/rand.o apps/rehash.o apps/req.o apps/rsa.o apps/rsautl.o apps/s_client.o apps/s_server.o apps/s_time.o apps/sess_id.o apps/smime.o apps/speed.o apps/spkac.o apps/srp.o apps/storeutl.o apps/ts.o apps/verify.o apps/version.o apps/x509.o \
		 apps/libapps.a -lssl -lcrypto -lz
ld: warning: search path '/opt/homebrew/Cellar/openssl@3/3.1.2/lib' not found
ld: Undefined symbols:
  _BIO_f_zlib, referenced from:
      _enc_main in enc.o
  _CRYPTO_mem_ctrl, referenced from:
      _main in openssl.o
  _CRYPTO_set_mem_debug, referenced from:
      _main in openssl.o
  _ERR_put_error, referenced from:
      _load_index in libapps.a[3](apps.o)
  _EVP_CIPHER_CTX_key_length, referenced from:
      _speed_main in speed.o
      _multiblock_speed in speed.o
  _EVP_CIPHER_flags, referenced from:
      _enc_main in enc.o
      _enc_main in enc.o
      _show_ciphers in enc.o
      _show_ciphers in enc.o
      _genpkey_main in genpkey.o
      _genpkey_main in genpkey.o
      _genpkey_main in genpkey.o
      _genpkey_main in genpkey.o
      ...
  _EVP_CIPHER_iv_length, referenced from:
      _enc_main in enc.o
      _enc_main in enc.o
      _enc_main in enc.o
      _enc_main in enc.o
      _enc_main in enc.o
  _EVP_CIPHER_key_length, referenced from:
      _enc_main in enc.o
      _enc_main in enc.o
      _enc_main in enc.o
      _enc_main in enc.o
  _EVP_CIPHER_nid, referenced from:
      _enc_main in enc.o
      _enc_main in enc.o
      _enc_main in enc.o
      _list_cipher_fn in openssl.o
      _speed_main in speed.o
      _speed_main in speed.o
      _speed_main in speed.o
      ...
  _EVP_MD_size, referenced from:
      _rehash_main in rehash.o
      _create_digest in ts.o
      _create_digest in ts.o
  _EVP_MD_type, referenced from:
      _ca_main in ca.o
      _crl_main in crl.o
      _dgst_main in dgst.o
      _list_md_fn in openssl.o
      _speed_main in speed.o
      _create_query in ts.o
      _x509_main in x509.o
      ...
  _EVP_PKEY_base_id, referenced from:
      _req_main in req.o
      _set_keygen_ctx in req.o
  _EVP_PKEY_bits, referenced from:
      _set_keygen_ctx in req.o
      _print_stuff in s_client.o
      _ssl_print_tmp_key in libapps.a[6](s_cb.o)
      _ssl_print_tmp_key in libapps.a[6](s_cb.o)
      _ssl_print_tmp_key in libapps.a[6](s_cb.o)
      _ssl_print_tmp_key in libapps.a[6](s_cb.o)
      _security_callback_debug in libapps.a[6](s_cb.o)
      ...
  _EVP_PKEY_id, referenced from:
      _dgst_main in dgst.o
      _set_keygen_ctx in req.o
      _x509_main in x509.o
      _x509_main in x509.o
      _ssl_print_tmp_key in libapps.a[6](s_cb.o)
      _ssl_print_tmp_key in libapps.a[6](s_cb.o)
  _EVP_PKEY_size, referenced from:
      _dgst_main in dgst.o
      _do_fp in dgst.o
      _init_ctx in pkeyutl.o
  _EVP_md2, referenced from:
      _EVP_Digest_MD2_loop in speed.o
  _MD2_options, referenced from:
      _speed_main in speed.o
      _version_main in version.o
  _OCSP_REQ_CTX_add1_header, referenced from:
      _query_responder in ocsp.o
      _query_responder in ocsp.o
      _load_cert_crl_http in libapps.a[3](apps.o)
  _OCSP_REQ_CTX_free, referenced from:
      _query_responder in ocsp.o
      _load_cert_crl_http in libapps.a[3](apps.o)
  _OCSP_REQ_CTX_http, referenced from:
      _load_cert_crl_http in libapps.a[3](apps.o)
  _OCSP_REQ_CTX_new, referenced from:
      _load_cert_crl_http in libapps.a[3](apps.o)
  _OCSP_REQ_CTX_set1_req, referenced from:
      _query_responder in ocsp.o
  _OCSP_parse_url, referenced from:
      _ocsp_main in ocsp.o
      _s_server_main in s_server.o
      _get_ocsp_resp_from_responder in s_server.o
      _load_cert_crl_http in libapps.a[3](apps.o)
  _OCSP_sendreq_nbio, referenced from:
      _query_responder in ocsp.o
  _RC5_32_cbc_encrypt, referenced from:
      _speed_main in speed.o
  _RC5_32_set_key, referenced from:
      _speed_main in speed.o
  _SSL_get_peer_certificate, referenced from:
      _print_stuff in s_client.o
      _www_body in s_server.o
      _print_connection_info in s_server.o
      _print_ssl_summary in libapps.a[6](s_cb.o)
  _TS_VERIFY_CTS_set_certs, referenced from:
      _create_verify_ctx in ts.o
  _X509_CRL_http_nbio, referenced from:
      _load_cert_crl_http in libapps.a[3](apps.o)
  _X509_NAME_hash, referenced from:
      _crl_main in crl.o
      _do_file in rehash.o
  _X509_http_nbio, referenced from:
      _load_cert_crl_http in libapps.a[3](apps.o)
clang: error: linker command failed with exit code 1 (use -v to see invocation)
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

1 participant