[ruby-cvs:63031] nagachika:r55866 (ruby_2_3): merge revision(s) 55100: [Backport #12292]

nagachika at ruby-lang.org nagachika at ruby-lang.org
Fri Aug 12 02:58:26 JST 2016


nagachika	2016-08-12 02:58:25 +0900 (Fri, 12 Aug 2016)

  New Revision: 55866

  https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=55866

  Log:
    merge revision(s) 55100: [Backport #12292]
    
    * ext/openssl/ossl_ssl.c (ossl_ssl_stop): Don't free the SSL struct
      here. Since some methods such as SSLSocket#connect releases GVL,
      there is a chance of use after free if we free the SSL from another
      thread. SSLSocket#stop was documented as "prepares it for another
      connection" so this is a slightly incompatible change. However when
      this sentence was added (r30090, Add toplevel documentation for
      OpenSSL, 2010-12-06), it didn't actually. The current behavior is
      from r40304 (Correct shutdown behavior w.r.t GC., 2013-04-15).
      [ruby-core:74978] [Bug #12292]
    
    * ext/openssl/lib/openssl/ssl.rb (sysclose): Update doc.
    
    * test/openssl/test_ssl.rb: Test this.

  Modified directories:
    branches/ruby_2_3/
  Modified files:
    branches/ruby_2_3/ChangeLog
    branches/ruby_2_3/ext/openssl/lib/openssl/ssl.rb
    branches/ruby_2_3/ext/openssl/ossl_ssl.c
    branches/ruby_2_3/test/openssl/test_ssl.rb
    branches/ruby_2_3/version.h


More information about the ruby-cvs mailing list