diff --git a/ChangeLog b/ChangeLog index ca668b4828..764fbba18b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Sun Jul 26 06:22:24 2015 Aaron Patterson + + * test/openssl/test_pair.rb: add a test ensuring that the default DH + callback is used when no DH callback is specified. + Sun Jul 26 04:08:27 2015 Aaron Patterson * ext/openssl/lib/openssl/ssl.rb (module OpenSSL): add missing diff --git a/test/openssl/test_pair.rb b/test/openssl/test_pair.rb index 6357cdc818..a8df74d821 100644 --- a/test/openssl/test_pair.rb +++ b/test/openssl/test_pair.rb @@ -283,6 +283,29 @@ module OpenSSL::TestPairM serv.close if serv && !serv.closed? end + def test_connect_without_setting_dh_callback + ctx2 = OpenSSL::SSL::SSLContext.new + ctx2.ciphers = "DH" + sock1, sock2 = tcp_pair + s2 = OpenSSL::SSL::SSLSocket.new(sock2, ctx2) + accepted = s2.accept_nonblock(exception: false) + + ctx1 = OpenSSL::SSL::SSLContext.new + ctx1.ciphers = "DH" + s1 = OpenSSL::SSL::SSLSocket.new(sock1, ctx1) + t = Thread.new { s1.connect } + + accept = s2.accept + assert_equal s1, t.value + assert accept + ensure + s1.close if s1 + s2.close if s2 + sock1.close if sock1 + sock2.close if sock2 + accepted.close if accepted.respond_to?(:close) + end + def test_ecdh_callback called = false ctx2 = OpenSSL::SSL::SSLContext.new