summaryrefslogtreecommitdiffstats
path: root/ext/digest
Commit message (Collapse)AuthorAgeFilesLines
* * array.c, bignum.c, cont.c, dir.c, dln.c, encoding.c, enumerator.c,ko12008-06-081-1/+1
| | | | | | | | | | | | | | | | | | | enumerator.c (enumerator_allocate), eval_jump.c, file.c, hash.c, io.c, load.c, pack.c, proc.c, random.c, re.c, ruby.c, st.c, string.c, thread.c, thread_pthread.c, time.c, util.c, variable.c, vm.c, gc.c: allocated memory objects by xmalloc (ruby_xmalloc) should be freed by xfree (ruby_xfree). * ext/curses/curses.c, ext/dbm/dbm.c, ext/digest/digest.c, ext/gdbm/gdbm.c, ext/json/ext/parser/parser.c, ext/json/ext/parser/unicode.c, ext/openssl/ossl_cipher.c, ext/openssl/ossl_hmac.c, ext/openssl/ossl_pkey_ec.c, ext/sdbm/init.c, ext/strscan/strscan.c, ext/zlib/zlib.c: ditto. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17017 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h (inttypes.h): includes always if available.nobu2008-03-141-4/+0
| | | | | | | * string.c, ext/digest/defs.h: moved inttypes.h to ruby.h. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@15780 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/defs.h: inttypes.h is still needed.nobu2008-03-141-0/+4
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@15776 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * configure.in (int8_t, uint8_t, int16_t, uint16_t int32_t,naruse2008-03-141-14/+0
| | | | | | | | | | | uint32_t int64_t, uint64_t, int128_t, uint128_t, intptr_t, uintptr_t): check if defined. * win32/Makefile.sub: follow configure.in. * ext/digest/defs.h: remove checks for uint8_t, uint32_t and uint64_t. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@15772 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/lib/digest/hmac.rb (Digest::HMAC#initialize): useakr2008-01-041-1/+1
| | | | | | | String#bytesize to avoid test errors on EUC-JP environment. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@14881 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/intern.h: export rb_ivar_foreach.akr2007-09-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/ruby/ruby.h: modify struct RObject and RClass for optimizing T_OBJECT space. [ruby-dev:31853] (ROBJECT_LEN, ROBJECT_PTR) (RCLASS_IV_TBL, RCLASS_M_TBL, RCLASS_SUPER, RCLASS_IV_INDEX_TBL) (RMODULE_IV_TBL, RMODULE_M_TBL, RMODULE_SUPER): abstract accessor defined. * variable.c: support the modified RObject and RClass. * object.c: ditto. * class.c: ditto. * gc.c: ditto. * marshal.c: ditto. * eval_method.ci: use the abstract accessor. * insns.def: ditto. * proc.c: ditto. * struct.c: ditto. * eval.c: ditto. * error.c: ditto. * vm.c: ditto. * insnhelper.ci: ditto. * ext/digest/digest.c: ditto. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@13543 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/lib/digest.rb (Digest::self.const_missing): avoidmatz2007-07-281-2/+4
| | | | | | infinite recursive const_missing call. [ruby-talk:262193] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@12851 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/dl/cfunc.c (rb_dlcfunc_call): adjust format. [ruby-dev:31222]nobu2007-07-151-5/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ext/digest/digest.c (rb_digest_instance_update, rb_digest_instance_finish, rb_digest_instance_reset, rb_digest_instance_block_length): %s in rb_raise() expects char*. [ruby-dev:31222] * ext/openssl/ossl.h: include ossl_pkcs5.h. [ruby-dev:31231] * ext/openssl/ossl_pkcs5.h: new file for PKCS5. [ruby-dev:31231] * ext/openssl/ossl_x509name.c (ossl_x509name_to_s): use ossl_raise() instead of rb_raise(). [ruby-dev:31222] * ext/sdbm/_sdbm.c: DOSISH platforms need io.h. [ruby-dev:31232] * ext/syck/syck.h: include stdlib.h for malloc() and free(). [ruby-dev:31232] * ext/syck/syck.h (syck_parser_set_input_type): prototype added. [ruby-dev:31231] * win32/win32.c: include mbstring.h for _mbspbrk(). [ruby-dev:31232] * include/ruby/win32.h (rb_w32_getcwd): prototype added. [ruby-dev:31232] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@12799 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby: moved public headers.nobu2007-06-101-1/+1
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@12501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* better error messageknu2007-02-281-1/+1
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11948 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/digest.c (get_digest_base_metadata): Allow inheritingknu2007-02-281-4/+8
| | | | | | | | Digest::Base subclasses, which was unintentionally made impossible while restructuring Digest classes. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11947 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/bigdecimal/bigdecimal.c (BigDecimal_load): Silence warningsknu2007-02-273-4/+4
| | | | | | | | | | | | | | | regarding char * vs. unsigned char * mismatch; submitted by Lyle Johnson <lyle.johnson@gmail.com> in [ruby-core:10416]. * ext/digest/sha1/sha1ossl.c (SHA1_Finish): Ditto. * ext/digest/rmd160/rmd160ossl.c (RMD160_Finish): Ditto. * ext/digest/digest.c (rb_digest_base_finish, rb_digest_base_update): Ditto. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11902 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/lib/digest.rb (Digest::self.const_missing): Dropknu2007-02-141-8/+10
| | | | | | | | autoloads for sha2 classes in favor of handling in const_missing(), to work around a problem exposed on OS X. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11736 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/sha2/lib/sha2.rb: Moved one level up from underknu2006-12-111-0/+0
| | | | | | | the superfluous subdirectory digest/. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11377 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Do alias << update.knu2006-12-041-0/+1
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11336 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/lib/digest/hmac.rb: Fix problems with updateknu2006-12-031-2/+6
| | | | | | | timing. [Reported by: oss-ruby@technorama.net] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11322 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/lib/digest/hmac.rb (Digest::HMAC::update): Minorknu2006-11-012-5/+6
| | | | | | | | | | optimization. * ext/digest/digest.c (rb_digest_instance_equal): Allow comparing a digest instance with another of a different class. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11254 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/digest.c (Init_digest): typo.usa2006-10-261-1/+1
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11225 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/test.sh: make this script work again.knu2006-10-251-4/+1
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11220 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/lib/digest.rb: Follow the framework updates.knu2006-10-211-5/+12
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11200 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/lib/digest/hmac.rb: Complete half-boiled updates.knu2006-10-202-9/+10
| | | | | | | * ext/digest/sha2/lib/digest/sha2.rb: Fix #initialize_clone(). git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11198 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest: Prefix C constants with RUBY_ and C type names withknu2006-10-2012-404/+569
| | | | | | | | | | | | | | | | | | | | | | | | | | | | rb_ to avoid name clash in writing extensions. * ext/digest: Introduce Digest::Class and Digest::Instance for ease of implementing subclasses and add-ons, inspried by gotoyuzo. * ext/digest: The Digest::Instance module now requires and assumes that any instance be resettable and clonable, and add some convenient instance methods such as "new()", for creating a new copy, parameter taking "digest()" and "hexdigest()", for instant calculation. These methods make digest instances work just like digest classes. * ext/digest/sha2/lib/digest/sha2.rb: Add the Digest::SHA2 class to wrap up SHA2 variants: SHA256, SHA384 and SHA512, hoping this module would make a decent example of a digest subclass written in Ruby. * ext/digest/lib/digest.rb: Adjust autoload entries for SHA2 classes. * ext/digest/lib/digest/hmac.rb: Follow the framework updates. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11197 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/digest.c, ext/digest/digest.h,knu2006-10-137-62/+188
| | | | | | | | | | | | | | | | | | | | | ext/digest/md5/md5init.c, ext/digest/rmd160/rmd160init.c, ext/digest/sha1/sha1init.c, ext/digest/sha2/sha2init.c: Introduce API versioning. * ext/digest/digest.c, ext/digest/digest.h, ext/digest/md5/md5init.c, ext/digest/rmd160/rmd160init.c, ext/digest/sha1/sha1init.c, ext/digest/sha2/sha2init.c: Remove the constants DIGEST_LENGTH and BLOCK_LENGTH and turn them into instance methods digest_length() and block_length(). Class methods with the same names are also provided, which take extra parameters for a digest method. * ext/digest/lib/digest/hmac.rb: Completely redesign the API which is similar to Perl's, now that Digest classes can take hashing parameters. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11166 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/digest.c: Improve RDoc documentation further more.knu2006-10-131-2/+13
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11165 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/digest.c: Improve RDoc documentation.knu2006-10-132-21/+42
| | | | | | | | | | | | | | * ext/digest/digest.c (Init_digest, rb_digest_base_s_digest, rb_digest_base_s_hexdigest): Make Digest::Base::digest() and Digest::Base::hexdigest() take extra arguments, which are passed through to the constructor in an internal call. * ext/digest/bubblebabble/bubblebabble.c (rb_digest_base_s_bubblebabble): Ditto for Digest::Base::bubblebabble(). git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11164 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Add .cvsignoreknu2006-10-131-0/+4
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11163 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/lib/digest.rb (Digest): Try to auto-load non-standardknu2006-10-131-3/+15
| | | | | | | | | | digest modules when a specified digest class is missing. * ext/digest/lib/digest.rb: Define Digest(name) for ease of dynamically selecting a hashing algorithm. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11155 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/digest.c (Init_digest): Digest::Base.new() does noknu2006-10-131-13/+0
| | | | | | | | | | | longer take an initial string to feed. This change allows subclasses to take hashing parameters. A statement such as ``md = Digest::MD5.new(s)'' can be easily rewritten as ``md = Digest::MD5.new << s'' or ``md = Digest::MD5.new.update(s)''. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11154 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/digest.c, ext/digest/md5/md5init.c,knu2006-10-137-243/+89
| | | | | | | | | | | ext/digest/rmd160/rmd160init.c, ext/digest/sha1/sha1init.c, ext/digest/sha2/sha2init.c: Add RDoc documentation. * ext/digest/digest.txt, ext/digest/digest.txt.ja: Removed in favor of embedded RDoc documentation. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11153 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/bubblebabble, ext/digest/digest.c: Rip BubbleBabbleknu2006-10-133-76/+139
| | | | | | | | support out of the base class and have a separate module named digest/bubblebabble. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11152 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/digest.c (rb_digest_base_equal): Again, should callknu2006-10-131-1/+1
| | | | | | | | digest() of a subclass instead of the one defined in the base class. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11151 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/digest.c (rb_digest_base_equal): Should call digest()knu2006-10-121-2/+2
| | | | | | | of a subclass instead of the one defined in the base class. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11148 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/lib/digest/hmac.rb: Make use of String#bytes.knu2006-10-111-7/+1
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11134 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/digest.c (get_digest_base_metadata): Use an instanceknu2006-10-115-10/+10
| | | | | | | | | | | | | | | | | variable of a class object instead of a class variable for metadata. This change is crucial for ruby 1.8 and applying it also to the trunk will assure compatibilities. * ext/digest/md5/md5init.c (Init_md5): Ditto. * ext/digest/rmd160/rmd160init.c (Init_rmd160): Ditto. * ext/digest/sha1/sha1init.c (Init_sha1): Ditto. * ext/digest/sha2/sha2init.c (Init_sha2): Ditto. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11133 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/digest.c (rb_digest_base_alloc,knu2006-10-1120-120/+14
| | | | | | | | | | | | | rb_digest_base_equal): Simplify the equality check and just compare resulted digests since state-level equality should not be significant. * ext/digest/digest.h: Ditto. * ext/digest/*/*.[ch]: Ditto. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11131 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/lib/digest/hmac.rb: Add digest/hmac, which implementsknu2006-10-111-0/+263
| | | | | | | HMAC keyed-hashing algorithm. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11126 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/digest.c (rb_digest_base_reset): Do not makeknu2006-10-111-5/+9
| | | | | | | | recursive calls, but call initialize() when reset() is not defined in a subclass. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11125 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/sha1/sha1ossl.h: libssl 0.9.8c-3 defines nomatz2006-10-111-0/+4
| | | | | | | SHA_BLOCK_LENGTH. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11123 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/digest.c (rb_digest_base_reset, Init_digest): Addknu2006-10-119-9/+45
| | | | | | | | | | | | | | | | | | | | | Digest::Base#reset. * ext/digest/digest.h: Update the header comment. * ext/digest/md5/md5ossl.h, ext/digest/md5/md5init.c (Init_md5): Define DIGEST_LENGTH and BLOCK_LENGTH. * ext/digest/rmd160/rmd160init.c (Init_rmd160): Ditto. * ext/digest/sha1/sha1init.c (Init_sha1): Ditto. * ext/digest/sha2/sha2init.c (Init_sha2): Ditto. * ext/digest/depend, ext/digest/extconf.rb: Use $INSTALLFILES rather than adding make targets. [Pointed out by: nobu] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11122 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/digest.c (hexdigest_str_new, bubblebabble_str_new):knu2006-10-101-4/+12
| | | | | | | Perform StringValue() checks properly. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11118 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/sha1/depend, ext/digest/sha2/depend: Remove obsoleteknu2006-10-102-4/+0
| | | | | | | dependencies. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11115 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/depend: Fix header installation when the buildknu2006-10-061-1/+1
| | | | | | | directory is different from srcdir. [Pointed out by: eban] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11099 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/depend: Install digest.h.knu2006-10-051-0/+6
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11095 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/lib/md5.rb, ext/digest/lib/sha1.rb: Remove thoseknu2006-10-052-28/+0
| | | | | | | compatibility stub libraries. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11092 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/digest.c: Make hexdigest() always call digest() internally.knu2006-10-051-45/+72
| | | | | | | * ext/digest/digest.c: Add bubblebabble(). git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11091 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/digest.c: Allow subclassing in Ruby.knu2006-10-051-12/+82
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11089 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/digest.c (hexdigest_str_new): Add a string size check.knu2006-10-051-1/+8
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11088 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/digest.[ch]: Since the argument order ofknu2006-10-0527-631/+92
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | hash_final_func_t was inconsistent with others, change it and rename to hash_finish_func_t to avoid confusion. * ext/digest/digest.[ch]: Remove and eliminate the use of hash_end_func_t. Implement hexdigest conversion in the base class. * ext/digest/md5/md5.c, ext/digest/md5/md5.h, ext/digest/md5/md5init.c, ext/digest/md5/md5ossl.c, ext/digest/md5/md5ossl.h: Remove MD5_End() and change MD5_Final() to MD5_Finish(). * ext/digest/rmd160/depend, ext/digest/rmd160/extconf.rb, ext/digest/rmd160/rmd160.c, ext/digest/rmd160/rmd160.h, ext/digest/rmd160/rmd160hl.c, ext/digest/rmd160/rmd160init.c, ext/digest/rmd160/rmd160ossl.c, ext/digest/rmd160/rmd160ossl.h: Remove unused functions RMD160_End(), RMD160_File(), RMD160_Data() and change RMD160_Final() to RMD160_Finish(). * ext/digest/sha1/extconf.rb, ext/digest/sha1/sha1.c, ext/digest/sha1/sha1.h, ext/digest/sha1/sha1hl.c, ext/digest/sha1/sha1init.c, ext/digest/sha1/sha1ossl.c, ext/digest/sha1/sha1ossl.h: Likewise. * ext/digest/sha2/extconf.rb, ext/digest/sha2/sha2.c, ext/digest/sha2/sha2.h, ext/digest/sha2/sha2hl.c, ext/digest/sha2/sha2init.c: Likewise. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11086 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/lib/digest.rb (Digest): Require digest.so and fix theknu2006-09-291-0/+2
| | | | | | | breakage. Point out by NAKAMURA Usaku in [ruby-dev:29619]. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11053 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/md5/md5init.c (Init_md5): Now that we have digest.rb,knu2006-09-274-4/+4
| | | | | | | | | | | | | require "digest" rather than "digest.so". * ext/digest/rmd160/rmd160init.c (Init_rmd160): Ditto. * ext/digest/sha1/sha1init.c (Init_sha1): Ditto. * ext/digest/sha2/sha2init.c (Init_sha2): Ditto. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11042 b2dd03c8-39d4-4d8f-98ff-823fe69b080e