START lib/libssl/openssl-ruby 2024-07-25T20:37:18Z ==== openssl-ruby-test ==== rm -f .test cd /usr/src/regress/lib/libssl/openssl-ruby && exec make test mkdir -p build touch .builddir cd build && ruby33 /usr/local/share/openssl-ruby-tests/ext/openssl/extconf.rb && make; checking for rb_io_descriptor()... yes checking for rb_io_maybe_wait(0, Qnil, Qnil, Qnil) in ruby/io.h... yes checking for rb_io_timeout() in ruby/io.h... yes checking for t_open() in -lnsl... no checking for socket() in -lsocket... no checking for pkg-config for openssl... [" ", "", "-lssl -lcrypto"] checking for openssl/ssl.h... yes checking for LIBRESSL_VERSION_NUMBER in openssl/opensslv.h... yes checking for LibreSSL version >= 3.1.0... yes checking for RAND_egd() in openssl/rand.h... no checking for ENGINE_load_dynamic() in openssl/engine.h... yes checking for ENGINE_load_4758cca() in openssl/engine.h... no checking for ENGINE_load_aep() in openssl/engine.h... no checking for ENGINE_load_atalla() in openssl/engine.h... no checking for ENGINE_load_chil() in openssl/engine.h... no checking for ENGINE_load_cswift() in openssl/engine.h... no checking for ENGINE_load_nuron() in openssl/engine.h... no checking for ENGINE_load_sureware() in openssl/engine.h... no checking for ENGINE_load_ubsec() in openssl/engine.h... no checking for ENGINE_load_padlock() in openssl/engine.h... no checking for ENGINE_load_capi() in openssl/engine.h... no checking for ENGINE_load_gmp() in openssl/engine.h... no checking for ENGINE_load_gost() in openssl/engine.h... no checking for ENGINE_load_cryptodev() in openssl/engine.h... no checking for i2d_re_X509_tbs(NULL, NULL) in openssl/x509.h... yes checking for SSL.ctx in openssl/ssl.h... no checking for EVP_MD_CTX_new() in openssl/evp.h... yes checking for EVP_MD_CTX_free(NULL) in openssl/evp.h... yes checking for EVP_MD_CTX_pkey_ctx(NULL) in openssl/evp.h... yes checking for X509_STORE_get_ex_data(NULL, 0) in openssl/x509.h... yes checking for X509_STORE_set_ex_data(NULL, 0, NULL) in openssl/x509.h... yes checking for X509_STORE_get_ex_new_index(0, NULL, NULL, NULL, NULL) in openssl/x509.h... yes checking for X509_CRL_get0_signature(NULL, NULL, NULL) in openssl/x509.h... yes checking for X509_REQ_get0_signature(NULL, NULL, NULL) in openssl/x509.h... yes checking for X509_REVOKED_get0_serialNumber(NULL) in openssl/x509.h... yes checking for X509_REVOKED_get0_revocationDate(NULL) in openssl/x509.h... yes checking for X509_get0_tbs_sigalg(NULL) in openssl/x509.h... yes checking for X509_STORE_CTX_get0_untrusted(NULL) in openssl/x509.h... yes checking for X509_STORE_CTX_get0_cert(NULL) in openssl/x509.h... yes checking for X509_STORE_CTX_get0_chain(NULL) in openssl/x509.h... yes checking for OCSP_SINGLERESP_get0_id(NULL) in openssl/ocsp.h... yes checking for SSL_CTX_get_ciphers(NULL) in openssl/ssl.h... yes checking for X509_up_ref(NULL) in openssl/x509.h... yes checking for X509_CRL_up_ref(NULL) in openssl/x509.h... yes checking for X509_STORE_up_ref(NULL) in openssl/x509.h... yes checking for SSL_SESSION_up_ref(NULL) in openssl/ssl.h... yes checking for EVP_PKEY_up_ref(NULL) in openssl/evp.h... yes checking for SSL_CTX_set_min_proto_version(NULL, 0) in openssl/ssl.h... yes checking for SSL_CTX_get_security_level(NULL) in openssl/ssl.h... yes checking for X509_get0_notBefore(NULL) in openssl/x509.h... yes checking for SSL_SESSION_get_protocol_version(NULL) in openssl/ssl.h... yes checking for TS_STATUS_INFO_get0_status(NULL) in openssl/ts.h... yes checking for TS_STATUS_INFO_get0_text(NULL) in openssl/ts.h... yes checking for TS_STATUS_INFO_get0_failure_info(NULL) in openssl/ts.h... yes checking for TS_VERIFY_CTS_set_certs(NULL, NULL) in openssl/ts.h... yes checking for TS_VERIFY_CTX_set_store(NULL, NULL) in openssl/ts.h... yes checking for TS_VERIFY_CTX_add_flags(NULL, 0) in openssl/ts.h... yes checking for TS_RESP_CTX_set_time_cb(NULL, NULL, NULL) in openssl/ts.h... yes checking for EVP_PBE_scrypt("", 0, (unsigned char *)"", 0, 0, 0, 0, 0, NULL, 0) in openssl/evp.h... no checking for SSL_CTX_set_post_handshake_auth(NULL, 0) in openssl/ssl.h... yes checking for EVP_PKEY_check(NULL) in openssl/evp.h... yes checking for EVP_PKEY_new_raw_private_key(0, NULL, (unsigned char *)"", 0) in openssl/evp.h... yes checking for SSL_CTX_set_ciphersuites(NULL, "") in openssl/ssl.h... yes checking for SSL_set0_tmp_dh_pkey(NULL, NULL) in openssl/ssl.h... no checking for ERR_get_error_all(NULL, NULL, NULL, NULL, NULL) in openssl/err.h... no checking for TS_VERIFY_CTX_set_certs(NULL, NULL) in openssl/ts.h... yes checking for SSL_CTX_load_verify_file(NULL, "") in openssl/ssl.h... no checking for BN_check_prime(NULL, NULL, NULL) in openssl/bn.h... no checking for EVP_MD_CTX_get0_md(NULL) in openssl/evp.h... no checking for EVP_MD_CTX_get_pkey_ctx(NULL) in openssl/evp.h... no checking for EVP_PKEY_eq(NULL, NULL) in openssl/evp.h... no checking for EVP_PKEY_dup(NULL) in openssl/evp.h... no creating extconf.h creating Makefile compiling /usr/local/share/openssl-ruby-tests/ext/openssl/openssl_missing.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_asn1.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_bio.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_bn.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_cipher.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_config.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_digest.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_engine.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_hmac.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_kdf.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_ns_spki.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_ocsp.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_pkcs12.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_pkcs7.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_pkey.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_pkey_dh.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_pkey_dsa.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_pkey_ec.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_pkey_rsa.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_provider.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_rand.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_ssl.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_ssl_session.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_ts.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_x509.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_x509attr.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_x509cert.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_x509crl.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_x509ext.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_x509name.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_x509req.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_x509revoked.c compiling /usr/local/share/openssl-ruby-tests/ext/openssl/ossl_x509store.c linking shared-object openssl.so touch .build cd build && env SKIP_EXPECTED_FAILURES=true ruby33 -I. -I/usr/local/share/openssl-ruby-tests/test/openssl -I/usr/local/share/openssl-ruby-tests/lib -e 'Dir["/usr/local/share/openssl-ruby-tests/test/openssl/test_*.rb"].each{|f| require f}' -- --no-use-color --no-show-detail-immediately Loaded suite -e Started OOPPPOPOOPP/usr/local/share/openssl-ruby-tests/test/openssl/test_bn.rb:349: warning: Ractor is experimental, and the behavior may change in future versions of Ruby! Also there are many implementation issues. 1) Pending: test_params_ok?(OpenSSL::TestPKeyDH): DH check for RFC 7919 FFDHE group texts is not implemented /usr/local/share/openssl-ruby-tests/test/openssl/test_pkey_dh.rb:115:in `test_params_ok?' 112: # function pass the RFC 7919 FFDHE group texts. 113: # https://github.com/openssl/openssl/pull/9435 114: unless openssl?(1, 1, 1, 4) => 115: pend 'DH check for RFC 7919 FFDHE group texts is not implemented' 116: end 117: 118: dh0 = Fixtures.pkey("dh2048_ffdhe2048") 2) Pending: test_client_ca(OpenSSL::TestSSL): skip failing client CA test /usr/local/share/openssl-ruby-tests/test/openssl/test_ssl.rb:398:in `test_client_ca' 395: 396: def test_client_ca 397: if ENV['SKIP_EXPECTED_FAILURES'] => 398: pend "skip failing client CA test" 399: end 400: ctx_proc = Proc.new do |ctx| 401: ctx.client_ca = [@ca_cert] 3) Pending: test_keylog_cb(OpenSSL::TestSSL): Keylog callback is not supported /usr/local/share/openssl-ruby-tests/test/openssl/test_ssl.rb:885:in `test_keylog_cb' 882: end 883: 884: def test_keylog_cb => 885: pend "Keylog callback is not supported" if !openssl?(1, 1, 1) || libressl? 886: 887: prefix = 'CLIENT_RANDOM' 888: context = OpenSSL::SSL::SSLContext.new 4) Pending: test_s_parse_include(OpenSSL::TestConfig): .include directive is not supported /usr/local/share/openssl-ruby-tests/test/openssl/test_config.rb:122:in `test_s_parse_include' 119: def test_s_parse_include 120: if !openssl?(1, 1, 1, 2) 121: # OpenSSL < 1.1.1 parses .include directive as a normal assignment => 122: pend ".include directive is not supported" 123: end 124: 125: in_tmpdir("ossl-config-include-test") do |dir| 5) Pending: test_scrypt_rfc7914_first(OpenSSL::TestKDF): scrypt is not implemented /usr/local/share/openssl-ruby-tests/test/openssl/test_kdf.rb:105:in `test_scrypt_rfc7914_first' 102: end 103: 104: def test_scrypt_rfc7914_first => 105: pend "scrypt is not implemented" unless OpenSSL::KDF.respond_to?(:scrypt) # OpenSSL >= 1.1.0 106: pass = "" 107: salt = "" 108: n = 16 6) Pending: test_scrypt_rfc7914_second(OpenSSL::TestKDF): scrypt is not implemented /usr/local/share/openssl-ruby-tests/test/openssl/test_kdf.rb:120:in `test_scrypt_rfc7914_second' 117: end 118: 119: def test_scrypt_rfc7914_second => 120: pend "scrypt is not implemented" unless OpenSSL::KDF.respond_to?(:scrypt) # OpenSSL >= 1.1.0 121: pass = "password" 122: salt = "NaCl" 123: n = 1024 Omissions: 1) Omission: Only for OpenSSL FIPS [test_ed25519_not_approved_on_fips(OpenSSL::TestPKey)] /usr/local/share/openssl-ruby-tests/test/openssl/utils.rb:164:in `omit_on_non_fips' 2) Omission: Only for OpenSSL FIPS [test_new_break_on_fips(OpenSSL::TestPKeyDH)] /usr/local/share/openssl-ruby-tests/test/openssl/utils.rb:164:in `omit_on_non_fips' 3) Omission: id-aes192-wrap-pad is not supported: unsupported cipher algorithm (id-aes192-wrap-pad) [test_aes_keywrap_pad(OpenSSL::TestCipher)] /usr/local/share/openssl-ruby-tests/test/openssl/test_cipher.rb:343:in `rescue in test_aes_keywrap_pad' 4) Omission: Only for FIPS mode environment [test_fips_mode_get_is_true_on_fips_mode_enabled(OpenSSL::TestFIPS)] /usr/local/share/openssl-ruby-tests/test/openssl/test_fips.rb:9:in `test_fips_mode_get_is_true_on_fips_mode_enabled' 5) Omission: OpenSSL is not FIPS-capable [test_fips_mode_get_with_fips_mode_set(OpenSSL::TestFIPS)] /usr/local/share/openssl-ruby-tests/test/openssl/test_fips.rb:38:in `test_fips_mode_get_with_fips_mode_set' Finished in 170.468455668 seconds. ------------------------------------------------------------------------------- 536 tests, 3986 assertions, 0 failures, 0 errors, 6 pendings, 5 omissions, 0 notifications 98.8701% passed ------------------------------------------------------------------------------- 3.14 tests/s, 23.38 assertions/s touch .test ==== test_client_ca ==== cd build && ruby33 -I. -I/usr/local/share/openssl-ruby-tests/test/openssl -I/usr/local/share/openssl-ruby-tests/lib /usr/local/share/openssl-ruby-tests/test/openssl/test_ssl.rb -n test_client_ca Loaded suite /usr/local/share/openssl-ruby-tests/test/openssl/test_ssl Started F =============================================================================== Failure: test_client_ca(OpenSSL::TestSSL): exceptions on 1 threads: #: /usr/local/share/openssl-ruby-tests/lib/openssl/ssl.rb:591:in `accept': SSL_accept returned=1 errno=0 peeraddr=(null) state=SSLv3 read certificate verify A: peer did not return a certificate (OpenSSL::SSL::SSLError) from /usr/local/share/openssl-ruby-tests/lib/openssl/ssl.rb:591:in `accept' from /usr/local/share/openssl-ruby-tests/test/openssl/utils.rb:239:in `block (3 levels) in start_server' from :187:in `loop' from /usr/local/share/openssl-ruby-tests/test/openssl/utils.rb:235:in `block (2 levels) in start_server' /usr/local/lib/ruby/gems/3.3/gems/test-unit-3.6.1/lib/test/unit/assertions.rb:60:in `block in assert_block': <[#]> expected but was (Test::Unit::AssertionFailedError) . from /usr/local/lib/ruby/gems/3.3/gems/test-unit-3.6.1/lib/test/unit/assertions.rb:1918:in `_wrap_assertion' from /usr/local/lib/ruby/gems/3.3/gems/test-unit-3.6.1/lib/test/unit/assertions.rb:54:in `assert_block' from /usr/local/lib/ruby/gems/3.3/gems/test-unit-3.6.1/lib/test/unit/assertions.rb:245:in `assert_equal' from /usr/local/share/openssl-ruby-tests/test/openssl/test_ssl.rb:413:in `block (2 levels) in test_client_ca' from /usr/local/share/openssl-ruby-tests/test/openssl/test_ssl.rb:1969:in `server_connect' from /usr/local/share/openssl-ruby-tests/test/openssl/test_ssl.rb:412:in `block in test_client_ca' from /usr/local/share/openssl-ruby-tests/test/openssl/utils.rb:268:in `block (2 levels) in start_server' /usr/local/lib/ruby/gems/3.3/gems/test-unit-ruby-core-1.0.2/lib/core_assertions.rb:748:in `assert_join_threads' /usr/local/share/openssl-ruby-tests/test/openssl/utils.rb:290:in `block in start_server' /usr/local/share/openssl-ruby-tests/test/openssl/utils.rb:211:in `pipe' /usr/local/share/openssl-ruby-tests/test/openssl/utils.rb:211:in `start_server' /usr/local/share/openssl-ruby-tests/test/openssl/test_ssl.rb:405:in `test_client_ca' 402: end 403: 404: vflag = OpenSSL::SSL::VERIFY_PEER|OpenSSL::SSL::VERIFY_FAIL_IF_NO_PEER_CERT => 405: start_server(verify_mode: vflag, ctx_proc: ctx_proc) { |port| 406: ctx = OpenSSL::SSL::SSLContext.new 407: client_ca_from_server = nil 408: ctx.client_cert_cb = Proc.new do |sslconn| =============================================================================== Finished in 0.583785318 seconds. ------------------------------------------------------------------------------- 1 tests, 2 assertions, 1 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 0% passed ------------------------------------------------------------------------------- 1.71 tests/s, 3.43 assertions/s *** Error 1 in . (Makefile:67 'test_client_ca') EXPECTED_FAIL XFAIL lib/libssl/openssl-ruby *** Error 1 in . (Makefile:67 'test_client_ca')