diff --git a/test/openssl/test_digest.rb b/test/openssl/test_digest.rb index e206ca0283..8b724a03a9 100644 --- a/test/openssl/test_digest.rb +++ b/test/openssl/test_digest.rb @@ -58,7 +58,10 @@ class OpenSSL::TestDigest < Test::Unit::TestCase end def test_digest_constants - algs = %w(DSS1 MD4 MD5 RIPEMD160 SHA SHA1) + algs = %w(DSS1 MD4 MD5 RIPEMD160 SHA1) + if !libressl? || !version_since([2,3]) + algs += %w(SHA) + end if OpenSSL::OPENSSL_VERSION_NUMBER > 0x00908000 algs += %w(SHA224 SHA256 SHA384 SHA512) end @@ -122,6 +125,14 @@ class OpenSSL::TestDigest < Test::Unit::TestCase d = OpenSSL::Digest.new(oid.oid) assert_not_nil(d) end + + def libressl? + OpenSSL::OPENSSL_VERSION.include?('LibreSSL') + end + + def version_since(verary) + (OpenSSL::OPENSSL_LIBRARY_VERSION.scan(/\d+/).map(&:to_i) <=> verary) != -1 + end end end