diff options
author | Jeremy Evans <code@jeremyevans.net> | 2022-01-03 15:18:02 -0800 |
---|---|---|
committer | git <svn-admin@ruby-lang.org> | 2022-01-04 08:25:58 +0900 |
commit | 67612dadbca5ddeba1c979e4838739bf7430a7cf (patch) | |
tree | 36827c342f89560e1d3ffde1fff97e4b3a8cb22b | |
parent | 8d6e4f156537f9bef51e14278ab9f2a4f9928120 (diff) | |
download | ruby-67612dadbca5ddeba1c979e4838739bf7430a7cf.tar.gz |
[ruby/net-http] Handle invalid use of IP addresses in SNI
Server Name Indication does not allow IP addresses (RFC 6066, section 3:
`Literal IPv4 and IPv6 addresses are not permitted in "HostName".`).
Recent versions of LibreSSL enforce this restriction, which raises
when setting the hostname to an IP address (s.hostname=), before
attempting to setup the SSL connection.
Since the certificate used in the test is already for localhost,
we cannot connect to localhost. However, as all the test does is
check for a specific exception, just modify the regexp used so it
handles both cases.
https://github.com/ruby/net-http/commit/6ab399db45
-rw-r--r-- | test/net/http/test_https.rb | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/test/net/http/test_https.rb b/test/net/http/test_https.rb index 4dc9f1b026..f62fd8c323 100644 --- a/test/net/http/test_https.rb +++ b/test/net/http/test_https.rb @@ -255,7 +255,7 @@ class TestNetHTTPS < Test::Unit::TestCase ex = assert_raise(OpenSSL::SSL::SSLError){ http.request_get("/") {|res| } } - re_msg = /certificate verify failed|hostname \"#{HOST_IP}\" does not match/ + re_msg = /certificate verify failed|hostname \"#{HOST_IP}\" does not match|ssl3 ext invalid servername/ assert_match(re_msg, ex.message) end |