Sha256: 3badcc198ef03e3317c9b76fdeee51e1a6035383f2c8216aefc85d5a336586c7

Contents?: true

Size: 739 Bytes

Versions: 6

Compression:

Stored size: 739 Bytes

Contents

--- ruby-2.1.3/ext/openssl/lib/openssl/ssl.rb_orig	2014-10-24 13:09:44.000000000 -0500
+++ ruby-2.1.3/ext/openssl/lib/openssl/ssl.rb	2014-10-24 13:11:01.000000000 -0500
@@ -194,7 +194,15 @@
         begin
           ssl = OpenSSL::SSL::SSLSocket.new(sock, @ctx)
           ssl.sync_close = true
-          ssl.accept if @start_immediately
+          if @start_immediately
+            # Retry on EAGAIN (may be due to underlying inprogress for TLS handshake or renegotiation requested.)
+            # Any other error is rescued further.
+             begin
+              ssl.accept
+            rescue Errno::EAGAIN
+              retry
+            end
+          end
           ssl
         rescue SSLError => ex
           sock.close

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
omnibus-software-23.7.295 config/patches/ruby/ruby_aix_ssl_EAGAIN.patch
omnibus-software-23.6.292 config/patches/ruby/ruby_aix_ssl_EAGAIN.patch
omnibus-software-23.6.291 config/patches/ruby/ruby_aix_ssl_EAGAIN.patch
omnibus-software-23.2.283 config/patches/ruby/ruby_aix_ssl_EAGAIN.patch
omnibus-software-23.2.281 config/patches/ruby/ruby_aix_ssl_EAGAIN.patch
omnibus-software-22.11.239 config/patches/ruby/ruby_aix_ssl_EAGAIN.patch