aboutsummaryrefslogtreecommitdiffstats
path: root/ext
Commit message (Collapse)AuthorAgeFilesLines
* * ext/{dl,fiddle}/win32/lib/win32/registry.rb: hope that the finalusa2013-07-092-63/+95
| | | | | | | | resolution to fix the failure of test-all. and includes Win64 support (fixed a potential bug). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41856 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/{dl,fiddle}/win32/lib/win32/registry.rb (Win32::Regstry#check):usa2013-07-092-16/+26
| | | | | | | | | | should report the position of the error. * ext/{dl,fiddle}/win32/lib/win32/registry.rb (Win32::Regstry#QueryValue): workaround for test-all crash. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41849 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/{dl,fiddle}/win32/lib/win32/registry.rb: typos.usa2013-07-092-4/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41848 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/{dl,fiddle}/win32/lib/win32/registry.rbusa2013-07-092-6/+6
| | | | | | | | | | | | (Win32::Registry.expand_environ): use suitable encoding for the string. * ext/{dl,fiddle}/win32/lib/win32/registry.rb (Win32::Registry#read): should return REG_SZ, REG_EXPAND_SZ and REG_MULTI_SZ values with the expected encoding -- assumed as the same encoding of name. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41847 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/{dl,fiddle}/win32/lib/win32/registry.rbusa2013-07-092-2/+2
| | | | | | | | (Win32::Registry::Error#initialize): use suitable encoding for the string. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41845 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/dl/win32/lib/win32/registry.rb (Win32::Registry.expand_environ):usa2013-07-092-27/+37
| | | | | | | | | | | use suitable encoding for the string. fixed a test-all error of r41838. * ext/fiddle/win32/lib/win32/registry.rb: same changes of r41838 and this revision of dl's win32/registry.rb. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41844 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32/registry.rb: use WCHARnobu2013-07-081-25/+35
| | | | | | | * ext/dl/win32/lib/win32/registry.rb (Error, API): use WCHAR interfaces. c.f. [Bug #8508] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41838 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bignum.c (rb_big_sq_fast): New function for testing.akr2013-07-081-0/+14
| | | | | | | | | | | (rb_big_mul_toom3): Ditto. * internal.h (rb_big_sq_fast): Declared. (rb_big_mul_toom3): Ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41832 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * internal.h (rb_big_mul_normal): Declared.akr2013-07-072-0/+42
| | | | | | | | | | | | | (rb_big_mul_balance): Ditto. (rb_big_mul_karatsuba): Ditto. * bignum.c (rb_big_mul_normal): New function for tests. (rb_big_mul_balance): Ditto. (rb_big_mul_karatsuba): Ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41824 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/openssl/ossl_pkey_ec.c: Ensure compatibility to builds ofemboss2013-07-051-0/+4
| | | | | | | | | | | | | | | OpenSSL with OPENSSL_NO_EC2M defined, but OPENSSL_NO_EC not defined. * test/openssl/test_pkey_ec.rb: Iterate over built-in curves (and assert their non-emptiness!) instead of hard-coding them, as this may cause problems with respect to the different availability of individual curves in individual OpenSSL builds. [ruby-core:54881] [Bug #8384] Thanks to Vit Ondruch for providing the patch! git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41808 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/openssl/ossl.c: Provide CRYPTO_set_locking_callback() andemboss2013-07-051-0/+39
| | | | | | | | | | | | CRYPTO_set_id_callback() callback functions ossl_thread_id and ossl_lock_callback to ensure the OpenSSL extension is usable in multi-threaded environments. [ruby-core:54900] [Bug #8386] Thanks, Dirkjan Bussink, for the patch! git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41806 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/openssl/ssl.rb: Fix SSL client connection crash for SAN markedemboss2013-07-051-1/+1
| | | | | | | | | | | | | | | | | | | critical. The patch for CVE-2013-4073 caused SSL crash when a SSL server returns the certificate that has critical SAN value. X509 extension could include 2 or 3 elements in it: [id, criticality, octet_string] if critical, [id, octet_string] if not. Making sure to pick the last element of X509 extension and use it as SAN value. [ruby-core:55685] [Bug #8575] Thank you @nahi for providing the patch! git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41805 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/psych/lib/psych/visitors/yaml_tree.rb: register time objects sotenderlove2013-07-051-1/+1
| | | | | | | they are referenced as ids during output. * test/psych/test_date_time.rb: corresponding test. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41804 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Fix comment typo by @parroty [fix GH-350]hsbt2013-07-051-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41785 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/ipsocket.c (init_inetsock_internal): Don't try mismachedakr2013-07-011-1/+1
| | | | | | | | address family if already failed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41731 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/bigdecimal/bigdecimal.h (RB_UNUSED_VAR, UNREACHABLE):mrkn2013-07-012-1/+13
| | | | | | | | | import macros from ruby.h for 1.9.3. [Bug #8588] [ruby-core:55730] * ext/bigdecimal/bigdecimal.gemspec: Bump version to 1.2.1. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41725 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/ipsocket.c (init_inetsock_internal): Use an addressakr2013-07-011-2/+7
| | | | | | | | | family for local address wihch is different to the remote address if no other choice. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41724 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* stringio.c: keep coderangenobu2013-07-011-1/+1
| | | | | | | * ext/stringio/stringio.c (strio_write): keep coderange of ptr->string. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41721 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bignum.c (RBIGNUM_SET_NEGATIVE_SIGN): New macro.akr2013-06-291-0/+10
| | | | | | | | | (RBIGNUM_SET_POSITIVE_SIGN): Ditto. (rb_big_neg): Inline get2comp to avoid double negation. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41696 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/ipsocket.c (init_inetsock_internal): Don't use localakr2013-06-281-3/+12
| | | | | | | | addresses which address family is different to remote address. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41686 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/openssl/lib/openssl/ssl.rb (verify_certificate_identity): fixnagachika2013-06-271-5/+13
| | | | | | | | | hostname verification. Patched by nahi. * test/openssl/test_ssl.rb (test_verify_certificate_identity): test for above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41671 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/bigdecimal/bigdecimal.c (BigDecimal_save_rounding_mode): fix typo.charliesome2013-06-261-1/+1
| | | | | | Fixes GH-343. Patch by @jgarber. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41663 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/bigdecimal/bigdecimal.c (BigMath_s_exp): Fix for the cases whenmrkn2013-06-251-1/+1
| | | | | | | | the argument x is not a BigDecimal. This change is based on the patch made by Garth Snyder. [Fix GH-332] https://github.com/ruby/ruby/pull/332 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41623 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bignum.c (MSB): Removed.akr2013-06-251-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | (BDIGIT_MSB): Defined using BIGRAD_HALF. (bary_2comp): Apply BIGLO after possible over flow of BDIGIT. (get2comp): Ditto. (bary_unpack_internal): Use BDIGIT_MSB. Apply BIGLO after possible over flow of BDIGIT. (rb_integer_unpack): Use BDIGIT_MSB. (calc_hbase): Use BDIGMAX. (big2dbl): Use BDIGMAX. Apply BIGLO after possible over flow of BDIGIT. (rb_big_neg): Apply BIGLO after possible over flow of BDIGIT. (biglsh_bang): Ditto. (bigrsh_bang): Ditto. (bary_divmod): Use BDIGIT_MSB. (bigdivrem): Ditto. (bigxor_int): Apply BIGLO after possible over flow of BDIGIT. * marshal.c (shortlen): Use SIZEOF_BDIGITS instead of sizeof(BDIGIT). * ext/openssl/ossl_bn.c (ossl_bn_initialize): Use SIZEOF_BDIGITS instead of sizeof(BDIGIT). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41613 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* dl/cfunc.c: fix conversion of Bignumshirosaki2013-06-241-1/+1
| | | | | | | | | | * ext/dl/cfunc.c (rb_dlcfunc_call): fix conversion from Bignum to pointer. sizeof(DLSTACK_TYPE) is larger than sizeof(long) on Windows x64 and higher bits over sizeof(long) of DLSTACK_TYPE was zero even if a pointer value was over 32 bits which causes SEGV on DL::TestCPtr#test_to_ptr_io. Adding a cast solves the bug. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41599 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bignum.c (bary_pack): Supportakr2013-06-221-0/+1
| | | | | | | | | | | | INTEGER_PACK_FORCE_GENERIC_IMPLEMENTATION flag. Fix byte order and word order handling in code specialized for wordsize % SIZEOF_BDIGITS == 0. * internal.h (INTEGER_PACK_FORCE_GENERIC_IMPLEMENTATION): Defined. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41565 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/etc/etc.c (setup_passwd): revert r41560, unnecessarycharliesome2013-06-221-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41563 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/etc/etc.c (Init_etc): omit 'passwd' from definition of Etc::Passwdcharliesome2013-06-221-2/+8
| | | | | | | if HAVE_STRUCT_PASSWD_PW_PASSWD is not defined to prevent mismatch of fields and values in setup_passwd git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41562 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/dl/cfunc.c (rb_dlcfunc_call): Use rb_big_pack instead ofakr2013-06-221-5/+8
| | | | | | | | | | rb_big2ulong_pack and rb_big2ull. * include/ruby/intern.h (rb_big2ulong_pack): Deprecated. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41561 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/etc/etc.c (setup_passwd): pass 0 as VALUE to rb_struct_new tocharliesome2013-06-221-1/+1
| | | | | | | prevent segfault if the compiler passes it as a 32 bit integer on a 64 bit ruby git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41560 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/etc/etc.c (etc_getpwnam): use PRIsVALUE in format string insteadcharliesome2013-06-221-2/+2
| | | | | | | | of %s and RSTRING_PTR * ext/etc/etc.c (etc_getgrnam): ditto git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41558 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/openssl/ossl_x509attr.c: change OSSL_X509ATTR_IS_SINGLE andcharliesome2013-06-211-2/+2
| | | | | | | OSSL_X509ATTR_SET_SINGLE macros to use ->value.set rather than ->set to fix compile failure git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41527 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/bigdecimal: Workaround fix for bigdecimal test failures causedakr2013-06-202-16/+25
| | | | | | | | | | | | | | | | | | | | by [ruby-dev:47413] [Feature #8509] * ext/bigdecimal/bigdecimal.h (BDIGIT): Make it independent from the definition for bignum.c. (SIZEOF_BDIGITS): Ditto. (BDIGIT_DBL): Ditto. (BDIGIT_DBL_SIGNED): Ditto. (PRI_BDIGIT_PREFIX): Undefine the definition. (PRI_BDIGIT_DBL_PREFIX): Ditto. * ext/bigdecimal/bigdecimal.c (RBIGNUM_ZERO_P): Use rb_bigzero_p. (bigzero_p): Removed. (is_even): Use rb_big_pack. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41502 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/objspace/object_tracing.c: Return for ::allocation_generationzzak2013-06-181-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41387 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/objspace/object_tracing.c: Document object_tracing methods.zzak2013-06-181-0/+98
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41385 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/objspace/objspace.c: Document ObjectSpace::InternalObjectWrapper.zzak2013-06-181-0/+12
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41383 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/objspace/object_tracing.c: Teach rdoc object_tracing.c [Bug #8537]zzak2013-06-181-0/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41382 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/.document: add object_tracing.c to document filezzak2013-06-181-0/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41381 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/objspace/objspace.c: rdoc on require to overview from r41355zzak2013-06-181-6/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41380 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/objspace/objspace.c: let rdoc know about objspace methods.eregon2013-06-171-2/+11
| | | | | | Specify 'objspace' should be required. See #8537. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41355 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c (ObjectSpace): is a module not a class.eregon2013-06-171-1/+6
| | | | | | | * ext/objspace/objspace.c: try to include overview in rdoc, see #8537. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41354 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* tkutil.c: prevent temporary objects from GCnobu2013-06-171-17/+16
| | | | | | | | | * ext/tk/tkutil/tkutil.c: use rb_sprintf(), rb_id2str(), and rb_intern_str() instead of rb_intern() and RSTRING_PTR() with RB_GC_GUARD(), to prevent temporary objects from GC. [ruby-core:39000] [Bug #5199] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41351 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/tk/extconf.rb: support s390x (Thanks to bkabrda) [ruby-trunk - Bug #5465]nagai2013-06-176-11/+18
| | | | | | | | * ext/tk/extconf.rb: apply [Backport87 - Backport #5048] * ext/tk/lib/tk/canvas.rb, ext/tk/sample/demos-{en,jp}/{tree.rb,widget}: fix bug (Thanks to zzak) [ruby-trunk - Bug #8319] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41347 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bignum.c (bary_2comp): Extracted from get2comp.akr2013-06-161-11/+0
| | | | | | | | | | | | | | | | | | | | (integer_unpack_num_bdigits): Extracted from rb_integer_unpack_internal. (bary_unpack_internal): Renamed from bary_unpack and support INTEGER_PACK_2COMP. (bary_unpack): New function to validate arguments and invoke bary_unpack_internal. (rb_integer_unpack_internal): Removed. (rb_integer_unpack): Invoke bary_unpack_internal. (rb_integer_unpack_2comp): Removed. * internal.h (rb_integer_unpack_2comp): Removed. * pack.c: Follow the above change. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41337 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * internal.h (INTEGER_PACK_2COMP): Defined.akr2013-06-161-19/+1
| | | | | | | | | | | | | | | | | | (rb_integer_pack_2comp): Removed. * bignum.c (bary_pack): Support INTEGER_PACK_2COMP. (rb_integer_pack): Invoke bary_pack directly. (rb_integer_pack_2comp): Removed. (rb_integer_pack_internal): Ditto. (absint_numwords_generic): Follow the above change. * pack.c (pack_pack): Ditto. * sprintf.c (rb_str_format): Ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41336 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/bigdecimal/bigdecimal.c: Update overview formatting of headerszzak2013-06-151-13/+18
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41309 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/bigdecimal/bigdecimal.gemspec: Update authorszzak2013-06-151-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41308 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/bigdecimal/*: improve documentation, nodoc samples with @mrknzzak2013-06-134-7/+28
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41287 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/extconf.rb: Enable RFC 3542 IPV6 socket options for OS Xdrbrain2013-06-121-0/+5
| | | | | | | 10.7+. [ruby-trunk - Bug #8517] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41266 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bignum.c (rb_integer_unpack_2comp): New function.akr2013-06-121-0/+11
| | | | | | | | | | | | | | | | | (rb_integer_unpack_internal): Extracted from rb_integer_unpack and nlp_bits_ret argument added. (integer_unpack_num_bdigits_small): nlp_bits_ret argument added to return number of leading padding bits. (integer_unpack_num_bdigits_generic): Ditto. * internal.h (rb_integer_unpack_2comp): Declared. * pack.c (pack_unpack): Use rb_integer_unpack_2comp and rb_integer_unpack. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41264 b2dd03c8-39d4-4d8f-98ff-823fe69b080e