[前][次][番号順一覧][スレッド一覧]

ruby-changes:63060

From: Yusuke <ko1@a...>
Date: Thu, 24 Sep 2020 19:25:53 +0900 (JST)
Subject: [ruby-changes:63060] 07786edd66 (master): test/net/http/test_https.rb: Stop the error due to openssl 1.1.1h

https://git.ruby-lang.org/ruby.git/commit/?id=07786edd66

From 07786edd66f59a529d6febb2e0fe901782991755 Mon Sep 17 00:00:00 2001
From: Yusuke Endoh <mame@r...>
Date: Thu, 24 Sep 2020 19:20:17 +0900
Subject: test/net/http/test_https.rb: Stop the error due to openssl 1.1.1h

On some environments that uses OpenSSL 1.1.1h, the two tests now fail.

http://rubyci.s3.amazonaws.com/android29-x86_64/ruby-master/log/20200924T062352Z.fail.html.gz
https://github.com/ruby/ruby/runs/1159288773?check_suite_focus=true

```
  1) Failure:
TestNetHTTPS#test_get [/data/data/com.termux/files/home/cb/tmp/build/20200924T062352Z/ruby/test/net/http/test_https.rb:47]:
<"0\x82\x03\xED0\x82\x02\xD5\xA0\x03..."> expected but was
<"0\x82\x03\xE30\x82\x02\xCB\xA0\x03...">.
```

Not sure why, but verify_callback now seems to receive only SERVER_CERT
but not CA_CERT.
It would be good to investigate the issue furthermore, but tentatively,
I want to stop the failures.

diff --git a/test/net/http/test_https.rb b/test/net/http/test_https.rb
index 0ca3394..deeb12d 100644
--- a/test/net/http/test_https.rb
+++ b/test/net/http/test_https.rb
@@ -44,8 +44,10 @@ class TestNetHTTPS < Test::Unit::TestCase https://github.com/ruby/ruby/blob/trunk/test/net/http/test_https.rb#L44
     http.request_get("/") {|res|
       assert_equal($test_net_http_data, res.body)
     }
-    assert_equal(CA_CERT.to_der, certs[0].to_der)
-    assert_equal(SERVER_CERT.to_der, certs[1].to_der)
+    # TODO: OpenSSL 1.1.1h seems to yield only SERVER_CERT; need to check the incompatibility
+    certs.zip([SERVER_CERT, CA_CERT]) do |actual, expected|
+      assert_equal(expected.to_der, actual.to_der)
+    end
   rescue SystemCallError
     skip $!
   end
@@ -63,8 +65,10 @@ class TestNetHTTPS < Test::Unit::TestCase https://github.com/ruby/ruby/blob/trunk/test/net/http/test_https.rb#L65
     http.request_get("/") {|res|
       assert_equal($test_net_http_data, res.body)
     }
-    assert_equal(CA_CERT.to_der, certs[0].to_der)
-    assert_equal(SERVER_CERT.to_der, certs[1].to_der)
+    # TODO: OpenSSL 1.1.1h seems to yield only SERVER_CERT; need to check the incompatibility
+    certs.zip([SERVER_CERT, CA_CERT]) do |actual, expected|
+      assert_equal(expected.to_der, actual.to_der)
+    end
   end
 
   def test_get_SNI_proxy
-- 
cgit v0.10.2


--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]