Age | Commit message (Collapse) | Author |
|
fixable on 64bit mswin/mingw.
* ext/date/date_core.c (d_lite_hash): ditto.
[Backport #13877]
* ext/openssl/ossl_bn.c (ossl_bn_hash): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@59879 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* OpenSSL::ASN1.{decode,decode_all,traverse}: have a bug of
out-of-bounds read. int_ossl_asn1_decode0_cons() does not give the
correct available length to ossl_asn1_decode() when decoding the
inner components of a constructed object. This can cause
out-of-bounds read if a crafted input given.
Reference: https://hackerone.com/reports/170316
https://github.com/ruby/openssl/commit/1648afef33c1d97fb203c82291b8a61269e85d3b
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@59800 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@59799 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
strscan.c: fix segfault in aref
* ext/strscan/strscan.c (strscan_aref): fix segfault after
get_byte or getch which do not apply regexp.
[ruby-core:82116] [Bug #13759]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@59545 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
Zlib::GzipReader#pos underflows after calling #ungetbyte or #ungetc at start of file [Bug #13616]
patched by Andrew Haines <andrew@haines.org.nz> [ruby-core:81488]
zlib.c: fix unnormalized Fixnum
* ext/zlib/zlib.c (rb_gzfile_total_out): cast to long not to
result in an unsigned long to normalized to Fixnum on LLP64
platforms. [ruby-core:81488]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@59532 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
from Cipher#initialize. This is effectively a revert of r32723
("Avoid possible SEGV from AES encryption/decryption", 2011-07-28).
the patch is derived from https://github.com/ruby/openssl/commit/8108e0a6db133f3375608303fdd2083eb5115062,
written by Kazuki Yamaguchi.
[Backport #8221]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@59267 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/psych/psych.gemspec: bump version to 2.1.0.1.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@59242 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
pathname.rb: UNC root pathname needs a separator
* ext/pathname/lib/pathname.rb (Pathname#plus): UNC root pathname
needs a separator. File.basename returns "/" on UNC root, as
well as sole drive letter, even if it does not end with a
separator. [ruby-core:80900] [Bug #13515]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@59240 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
date_core.c: fix docs for %Z format
* ext/date/date_core.c: [DOC] fix documentation for %Z format
of {Date,DateTime}.strftime.
Reported by Damon Timm. Based on a patch by nano.
[ruby-core:79602] [Bug #13231] [Fix GH-1565]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@59237 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
X509_LOOKUP_load_file()
X509_LOOKUP_load_file(), which ends up calling
X509_load_cert_crl_file()
internally, may leave error entries in the queue even when it returns
non-zero value (which indicates success).
This will be fixed by OpenSSL 1.1.1, but can be worked around by
clearing the error queue ourselves.
Fixes: [Backport #11033]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@59235 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* gc.c (heap_page_resurrect): do not return tomb_pages when
page->freelist == NULL.
[Bug #12670]
test for [Bug #12670]
heap corruption by deferred free.
gc.c: expand sorted pages
* gc.c (heap_page_allocate): expand sorted pages before inserting
allocated new page. [Bug #12670]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@59234 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
thread.c: avoid busy looping on rb_thread_fd_close
We no longer use it this function, but extensions do, and
we need to ensure it continues to work for them.
* thread.c (rb_thread_fd_close): schedule other threads in loop
* ext/-test-/thread_fd_close/thread_fd_close.c: new file
* ext/-test-/thread_fd_close/depend: ditto
* ext/-test-/thread_fd_close/extconf.rb: ditto
* test/-ext-/thread_fd_close/test_thread_fd_close.rb: new test
* properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@59229 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
ripper/lexer.rb: nested indented heredoc
* ext/ripper/lib/ripper/lexer.rb (on_heredoc_dedent): fix for
nested indedented here documents, where `Elem`s are nested too.
[ruby-core:80977] [Bug #13536]
ripper/lexer.rb: nested indented heredoc
* ext/ripper/lib/ripper/lexer.rb (on_heredoc_dedent): insert
stripped leading spaces as `on_ignored_sp` elements, so that the
original source can be reconsructed.
[ruby-core:80977] [Bug #13536]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@59214 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
win32/resolv.rb: ad hoc workaround
* ext/win32/lib/win32/resolv.rb (Win32::Resolv::SZ): an ad hoc
workaround for broken registry. SearchList and other registry
values must be REG_SZ, or Windows ignores anything in those
values otherwise. [ruby-dev:49924] [Bug #13081]
https://github.com/rubygems/rubygems/issues/1700
win32/registry.rb: registry type names
* ext/win32/lib/win32/registry.rb (Win32::Registry#read): show
registry type names instead of numeric values.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@58172 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
stringio.c: RB_INTEGER_TYPE_P
* ext/stringio/stringio.c (RB_INTEGER_TYPE_P): fallback definition
for 2.3 or earlier.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@58165 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
stringio.c: check character code
* ext/stringio/stringio.c (strio_ungetc): check if the character
code is valid in the encoding. reported by Ahmad Sherif
(ahmadsherif) at https://hackerone.com/reports/209593.
stringio.c: check range
* ext/stringio/stringio.c (strio_ungetc): raise RangeError instead
of TypeError at too big value, as well as IO#ungetc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@58160 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
console.c: OOB access
* ext/io/console/console.c (console_set_winsize): fix
out-of-bounds access. [ruby-core:79004] [Bug #13112]
console.c: unpaired size
* ext/io/console/console.c (console_set_winsize): reject unpaired
pixel size.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@58151 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
It breaked CI on vc12-x64
http://13.78.52.201/vc12-x64/ruby-2.3/log/20170207T182419Z.log.html.gz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@57626 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/win32/resolv/resolv.c (get_dns_server_list): [Win32] get DNS
servers only for connected network devices by GetNetworkParams
API. [Bug #12604]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@57571 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* test/ruby/test_file.rb (TestFile#test_stat): fix noatime case.
[ruby-core:77943] [Bug #12903]
* ext/-test/file/fs.c (get_atime_p): Updating of file access times
is enabled or not.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@56785 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/openssl/ossl.c (Init_openssl): register an ex_data index for
X509_STORE and X509_STORE_CTX respectively. Since they don't share
the ex_data index registry, we can't use the same index.
(ossl_verify_cb): use the the correct index.
* ext/openssl/ossl_ssl.c (ossl_ssl_verify_callback): ditto.
* ext/openssl/ossl_x509store.c (ossl_x509store_set_vfy_cb): ditto.
(ossl_x509stctx_verify): ditto.
* ext/openssl/ossl.h (void ossl_clear_error): add extern declarations
of ossl_store_{ctx_,}ex_verify_cb_idx.
* ext/openssl/openssl_missing.c: remove X509_STORE_set_ex_data and
X509_STORE_get_ex_data.
* ext/openssl/openssl_missing.h: implement X509_STORE_get_ex_data,
X509_STORE_set_ex_data and X509_STORE_get_ex_new_index as macros.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@56565 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/bigdecimal/bigdecimal.c: Import changes from ruby/bigdecimal
repository.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@56562 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
strscan.c: use S_RESTLEN
* ext/strscan/strscan.c (strscan_getch, strscan_peek),
(strscan_rest_size, inspect2): use S_RESTLEN consistently.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@56331 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/openssl/ossl_pkcs12.c (ossl_pkcs12_initialize): pop errors
leaked by PKCS12_parse(). This is a bug in OpenSSL, which exists
in the versions before the version 1.0.0t, 1.0.1p, 1.0.2d.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@56258 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
https://github.com/ruby/openssl/commit/e76f076f093efb93dabf2cb042c527500f956061
patches are provided by rhe (Kazuki Yamaguchi).
* ext/openssl/ossl_x509ext.c: additional fix memory leak.
[ruby-core:76922] [Bug #12680]
* text/openssl/test_x509ext.rb: test for above.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@56032 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
https://github.com/ruby/openssl/compare/3a2840e80d275895523a526ce56e4f6e7b8f9cc4...1e30cd395b14ef46e04bdd9ab72f10067890b265
patches are provided by rhe (Kazuki Yamaguchi).
* ext/openssl/ossl_config.c: fix memory leak. [ruby-core:76922] [Bug #12680]
* ext/openssl/ossl_ocsp.c: ditto.
* ext/openssl/ossl_pkcs12.c: ditto.
* ext/openssl/ossl_pkcs7.c: ditto.
* ext/openssl/ossl_pkey_ec.c: ditto.
* ext/openssl/ossl_x509.h: ditto.
* ext/openssl/ossl_x509attr.c: ditto.
* ext/openssl/ossl_x509crl.c: ditto.
* ext/openssl/ossl_x509ext.c: ditto.
* ext/openssl/ossl_x509req.c: ditto.
* ext/openssl/ossl_x509revoked.c: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@56018 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/openssl/ossl_ssl.c (ossl_ssl_write_internal):
avoid undefined behavior
* test/openssl/test_pair.rb (test_write_zero): new test
[ruby-core:76751] [Bug #12660]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55961 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/socket/option.c, ext/socket/rubysocket.h (inet_ntop): share
the fallback definition. [ruby-core:76646] [Bug #12645]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55960 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/digest/md5/md5ossl.h: Remove excess semicolons.
Suppress warning on Solaris with Oracle Solaris Studio 12.
[ruby-dev:49692] [Bug #12524]
* ext/digest/md5/md5cc.h: ditto.
* ext/digest/sha1/sha1cc.h: ditto.
* ext/digest/sha1/sha1ossl.h: ditto.
* ext/digest/sha2/sha2cc.h: ditto.
* ext/digest/sha2/sha2ossl.h: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55918 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/date/date_strftime.c (date_strftime_with_tmx): reject too
large precision to get rid of buffer overflow.
reported by Guido Vranken <guido AT guidovranken.nl>.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55910 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/openssl/ossl_bn.c (try_convert_to_bnptr): Extracted from
GetBNPtr(). This doesn't raise exception but returns NULL on error.
(GetBNPtr): Raise TypeError if conversion fails.
(ossl_bn_eq): Implement BN#==.
(ossl_bn_eql): #eql? should not raise TypeError even if the argument
is not compatible with BN.
(ossl_bn_hash): Implement BN#hash.
* ext/openssl/ossl_bn.c (Init_ossl_bn): Define #== and #hash.
* test/openssl/test_bn.rb: Test BN#eql?, #== and #hash
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55906 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/openssl/ossl_pkey_dh.c (ossl_dh_compute_key): Check that the DH
has 'p' (the prime) before calling DH_size(). We can create a DH with
no parameter but DH_size() does not check and dereferences NULL.
[ruby-core:75720] [Bug #12428]
* ext/openssl/ossl_pkey_dsa.c (ossl_dsa_sign): Ditto. DSA_size() does
not check dsa->q.
* ext/openssl/ossl_pkey_rsa.c (ossl_rsa_public_encrypt,
ossl_rsa_public_decrypt, ossl_rsa_private_encrypt,
ossl_rsa_private_decrypt): Ditto. RSA_size() does not check rsa->n.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55904 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/psych/*, test/psych/*: Upate psych 2.1.0
This version fixed [Bug #11988][ruby-core:72850]
* ext/psych/*, test/psych/*: Update psych 2.1.0
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55902 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* common.mk (build-ext), ext/extmk.rb: use variable EXTENCS
different than ENCOBJS, to get rid of circular dependency.
build libencs when linking encodings statically.
[ruby-core:75618] [Bug #12401]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55871 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* 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/branches/ruby_2_3@55866 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/json/lib/*.rb: Removed some comments. Because these are unnecessary
class description. [ci skip][Bug #12255][ruby-core:74835]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55855 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/bigdecimal/bigdecimal.c (GetVpValueWithPrec): consider
non-finite float values not to raise FloatDomainError.
[ruby-core:75682] [Bug #12414]
* ext/bigdecimal/bigdecimal.c (isfinite): isfinite does not always
exist. fixed build error on Windows introduced at r55123.
* ext/bigdecimal/bigdecimal.c (isfinite): get rid of a warning on
cygwin. [Bug #12417][ruby-core:75691]
* include/ruby/missing.h (isfinite): move from numeric.c.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55445 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/date/date_core.c (Init_date_core): [DOC] Convert DateTime
documentation to RDoc from Markdown.
[ruby-core:75136] [Bug #12311]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55399 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/win32ole/win32ole.c (ole_vstr2wc, ole_variant2val): fix blank
string conversion.
[Bug #11880]
Thanks Akio Tajima for the patch!
string conversion.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@54923 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* encoding.c: Fix return value of `Encoding::ISO8859_1.name`
[Bug #12313][ruby-core:75147][ci skip]
* ext/bigdecimal/bigdecimal.c: Fix code sample of `BigDecimal.new`
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@54765 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/nkf/nkf-utf8/nkf.c: Merge upstream 4f3edf80a0.
patched by Anton Sivakov [Bug #12201] [Bug #12202]
* ext/nkf/nkf-utf8/nkf.c (mime_putc): fix typo.
[Bug #12202] [ruby-core:74802]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@54714 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* struct.c (struct_make_members_list): extract making member name
list from char* va_list, with creating symbols without
intermediate IDs.
* struct.c (struct_make_members_list, rb_struct_s_def): member
names should be unique. [ruby-core:74971] [Bug #12291]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@54637 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/win32/lib/win32/registry.rb (DeleteValue, DeleteKey): fix
API names. [ruby-core:74863] [Bug #12264]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@54636 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* vm_core.h (rb_vm_struct): make at_exit a single linked list but
not RArray, not to mark the registered functions by the write
barrier. based on the patches by Evan Phoenix.
[ruby-core:73908] [Bug #12095]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@54633 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* thread.c (update_coverage): Do not track coverage in loaded files
after Coverage.result. Avoids out-of-bounds access. [Bug #12237]
* ext/coverage/coverage.c (coverage_clear_result_i): document.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@54632 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/date/date_core.c (Init_date_core): [DOC] fix misplaced doc
of DateTime. [ruby-core:74729] [Bug #12233]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@54631 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/openssl/extconf.rb: check SSL_CTX_set_next_proto_select_cb
function rather than OPENSSL_NPN_NEGOTIATED macro. it exists
even if it is disabled by OpenSSL configuration.
[ruby-core:74384] [Bug #12182]
* ext/openssl/ossl_ssl.c: update #ifdef(s) as above.
* test/openssl/test_ssl.rb: skip NPN tests if NPN is disabled.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@54551 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/ripper/lib/ripper/lexer.rb (on_heredoc_dedent): Fix
Ripper.lex error in dedenting squiggly heredoc. heredoc tree is
also an array of Elem in the outer tree. [Fix GH-1234]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@54471 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* string.c (str_new_frozen): if the given string is embeddedable
but not embedded, embed a new copied string. [Bug #11946]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@54416 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/extmk.rb: add cygwin case, nothing excluded.
[ruby-core:73806] [Bug#12071]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@54406 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|