1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/ext
rhe 118ee2a734 openssl: fix possible SEGV on race between SSLSocket#stop and #connect
* 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.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55100 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-05-21 07:25:00 +00:00
..
-test- Use Integer instead of Fixnum and Bignum. 2016-05-17 13:15:57 +00:00
bigdecimal * encoding.c: Fix return value of Encoding::ISO8859_1.name 2016-04-25 02:17:54 +00:00
cgi/escape cgi/util.rb: remove CGI::Util#_unescape 2016-04-20 08:33:33 +00:00
continuation handle ext/ as r53141 2015-12-16 05:31:54 +00:00
coverage Update dependencies. 2016-04-11 11:50:00 +00:00
date fix typos [ci skip] 2016-05-20 13:21:55 +00:00
dbm handle ext/ as r53141 2015-12-16 05:31:54 +00:00
digest Update dependencies. 2016-04-11 11:50:00 +00:00
etc handle ext/ as r53141 2015-12-16 05:31:54 +00:00
fcntl handle ext/ as r53141 2015-12-16 05:31:54 +00:00
fiber handle ext/ as r53141 2015-12-16 05:31:54 +00:00
fiddle fiddle/import.rb: suppress warnings 2016-04-11 04:28:16 +00:00
gdbm handle ext/ as r53141 2015-12-16 05:31:54 +00:00
io io/console: bump up 2016-04-15 06:15:54 +00:00
json [Feature #12005] Unify Fixnum and Bignum into Integer 2016-05-17 06:53:48 +00:00
mathn handle ext/ as r53141 2015-12-16 05:31:54 +00:00
nkf Update dependencies. 2016-04-11 11:50:00 +00:00
objspace objspace_dump.c: fix format 2016-05-08 09:59:36 +00:00
openssl openssl: fix possible SEGV on race between SSLSocket#stop and #connect 2016-05-21 07:25:00 +00:00
pathname handle ext/ as r53141 2015-12-16 05:31:54 +00:00
psych stdlib: avoid extra calls to eliminate "\n" from Base64 2016-01-10 00:35:43 +00:00
pty pty.c: dry up 2016-04-30 01:12:52 +00:00
racc/cparse handle ext/ as r53141 2015-12-16 05:31:54 +00:00
rbconfig/sizeof rbconfig/sizeof: calculate at compilation time 2016-04-25 05:39:12 +00:00
readline Update dependencies. 2016-04-11 11:50:00 +00:00
ripper ripper: fix ripper.E 2016-04-25 07:56:06 +00:00
sdbm Update dependencies. 2016-04-11 11:50:00 +00:00
socket Update dependencies. 2016-04-11 11:50:00 +00:00
stringio stringio.c: warn block for new 2016-04-27 06:47:56 +00:00
strscan Update dependencies. 2016-04-11 11:50:00 +00:00
syslog Update dependencies. 2016-04-11 11:50:00 +00:00
tk tk/extconf.rb: refactor 2016-04-25 08:30:56 +00:00
win32 registry.rb: fix API names 2016-04-10 11:54:17 +00:00
win32ole win32ole.c: share the content 2016-05-20 12:17:14 +00:00
zlib * ext/zlib/zlib.c: Document mtime header behavior with patch by @schneems 2016-02-09 05:33:35 +00:00
.document
extmk.rb extmk.rb: fix skipping messages 2016-05-16 00:16:13 +00:00
Setup ext/thread: remove 2016-04-30 02:56:17 +00:00
Setup.atheos cgi/escape: Optimize CGI.escapeHTML 2015-12-20 11:54:54 +00:00
Setup.nacl cgi/escape: Optimize CGI.escapeHTML 2015-12-20 11:54:54 +00:00
Setup.nt cgi/escape: Optimize CGI.escapeHTML 2015-12-20 11:54:54 +00:00