summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoremboss <emboss@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-05-25 13:24:47 +0000
committeremboss <emboss@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-05-25 13:24:47 +0000
commit913827b6afd701f5f5b7461e3acf15c70ab4f22b (patch)
tree741dbd07a0774e8041f20828c6892625de2ed98e
parent655a20ea9ddc13fc9359c3ae790371d658181db0 (diff)
* ext/openssl/ossl_ssl.c: Revert r35583
* test/openssl/test_ssl.rb: Handle ECONNRESET in code instead to avoid the test failing in Ruby CI [1] [1] http://u64.rubyci.org/~chkbuild/ruby-trunk/log/20120507T190102Z.log.html.gz#test-all git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35795 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog8
-rw-r--r--ext/openssl/ossl_ssl.c1
-rw-r--r--test/openssl/test_ssl.rb2
3 files changed, 11 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index bdd22e8c9d2..38d265cf471 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+Fri May 25 22:19:40 2012 Martin Bosslet <Martin.Bosslet@googlemail.com>
+
+ * ext/openssl/ossl_ssl.c: Revert r35583
+ * test/openssl/test_ssl.rb: Handle ECONNRESET in code instead to avoid
+ the test failing in Ruby CI [1]
+
+ [1] http://u64.rubyci.org/~chkbuild/ruby-trunk/log/20120507T190102Z.log.html.gz#test-all
+
Fri May 25 19:51:36 2012 Koichi Sasada <ko1@atdot.net>
* vm_eval.c (rb_f_caller): caller() method accepts second optional
diff --git a/ext/openssl/ossl_ssl.c b/ext/openssl/ossl_ssl.c
index d285e58a826..d375b0ff67d 100644
--- a/ext/openssl/ossl_ssl.c
+++ b/ext/openssl/ossl_ssl.c
@@ -1158,6 +1158,7 @@ ossl_start_ssl(VALUE self, int (*func)(), const char *funcname, int nonblock)
rb_io_wait_readable(FPTR_TO_FD(fptr));
continue;
case SSL_ERROR_SYSCALL:
+ if (errno) rb_sys_fail(funcname);
ossl_raise(eSSLError, "%s SYSCALL returned=%d errno=%d state=%s", funcname, ret2, errno, SSL_state_string_long(ssl));
default:
ossl_raise(eSSLError, "%s returned=%d errno=%d state=%s", funcname, ret2, errno, SSL_state_string_long(ssl));
diff --git a/test/openssl/test_ssl.rb b/test/openssl/test_ssl.rb
index 5fff78fe3e9..f3f3c9c3658 100644
--- a/test/openssl/test_ssl.rb
+++ b/test/openssl/test_ssl.rb
@@ -516,6 +516,8 @@ end
ssl.sync_close = true
ssl.connect
yield ssl
+ rescue Errno::ECONNRESET => e
+ raise OpenSSL::SSL::SSLError.new(e.message)
ensure
ssl.close
end