aboutsummaryrefslogtreecommitdiffstats
path: root/ext/digest
Commit message (Collapse)AuthorAgeFilesLines
* * 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: svn+ssh://ci.ruby-lang.org/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: svn+ssh://ci.ruby-lang.org/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: svn+ssh://ci.ruby-lang.org/ruby/trunk@11164 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Add .cvsignoreknu2006-10-131-0/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/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: svn+ssh://ci.ruby-lang.org/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: svn+ssh://ci.ruby-lang.org/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: svn+ssh://ci.ruby-lang.org/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: svn+ssh://ci.ruby-lang.org/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: svn+ssh://ci.ruby-lang.org/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: svn+ssh://ci.ruby-lang.org/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: svn+ssh://ci.ruby-lang.org/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: svn+ssh://ci.ruby-lang.org/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: svn+ssh://ci.ruby-lang.org/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: svn+ssh://ci.ruby-lang.org/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: svn+ssh://ci.ruby-lang.org/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: svn+ssh://ci.ruby-lang.org/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: svn+ssh://ci.ruby-lang.org/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: svn+ssh://ci.ruby-lang.org/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: svn+ssh://ci.ruby-lang.org/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: svn+ssh://ci.ruby-lang.org/ruby/trunk@11099 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/depend: Install digest.h.knu2006-10-051-0/+6
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/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: svn+ssh://ci.ruby-lang.org/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: svn+ssh://ci.ruby-lang.org/ruby/trunk@11091 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/digest.c: Allow subclassing in Ruby.knu2006-10-051-12/+82
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/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: svn+ssh://ci.ruby-lang.org/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: svn+ssh://ci.ruby-lang.org/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: svn+ssh://ci.ruby-lang.org/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: svn+ssh://ci.ruby-lang.org/ruby/trunk@11042 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/lib/digest.rb (Digest::Base.file): open a file in binaryakr2006-09-141-1/+1
| | | | | | | mode. suggested by Kazuhiro NISHIYAMA. [ruby-dev:29579] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10936 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* add a document for Digest::Base.file.akr2006-09-141-0/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10929 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/lib/digest.rb (Digest::Base.file): new method.akr2006-09-141-0/+13
| | | | | | | [ruby-dev:29572] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/digest.c (rb_digest_base_inspect): new method.akr2006-09-131-0/+22
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10926 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/lib/digest.rb: new file.akr2006-09-131-0/+8
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10924 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ruby.h (struct RString): embed small strings.matz2006-08-311-9/+9
| | | | | | | | | | (RSTRING_LEN): defined for accessing string members. (RSTRING_PTR): ditto. * string.c: use RSTRING_LEN and RSTRING_PTR. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10809 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Make RDoc show up.drbrain2006-08-281-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10791 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Include attributiondrbrain2006-08-271-19/+15
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10789 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/bigdecimal/bigdecimal.c, ext/digest/rmd160/rmd160ossl.c,matz2006-08-072-2/+2
| | | | | | | | | ext/digest/sha1/sha1ossl.c, ext/readline/readline.c: move incluion of config.h to pacify AIX. a patch from Yutaka Kanemoto <kinpoco at gmail.com>. [ruby-dev:29197] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10699 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* add extconf.h to .cvsignore.akr2006-06-245-0/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10375 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ruby.h, lib/mkmf.rb (create_header): clear command line options fornobu2006-05-254-4/+8
| | | | | | | | | | | | | | | macros moved to extconf.h. * ext/extmk.rb (extract_makefile, extmk): made RUBY_EXTCONF_H and EXTSTATIC permanent. * ext/{dbm,digest/*,socket,zlib}/extconf.rb: used $defs and $INCFLAGS. * {bcc32,win32,wince}/Makefile.sub (COMPILE_C, COMPILE_CXX): added $(INCFLAGS). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10193 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * eval.c (rb_mod_define_method): should save safe_level in thematz2005-12-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | proc object. [ruby-dev:28146] * test/drb/drbtest.rb (DRbService::self.ext_service): increase timeout limit. a patch from Kazuhiro NISHIYAMA <zn at mbf.nifty.com>. [ruby-dev:28132] * eval.c (ev_const_get): fixed a bug in constant reference during instance_eval. [yarv-dev:707] * eval.c (ev_const_defined): ditto. * lib/yaml.rb (YAML::add_domain_type): typo fixed. a patch from Joel VanderWerf <vjoel at path.berkeley.edu>. [ruby-talk:165285] [ruby-core:6995] * ext/digest/sha2/sha2.c (ULL): support AIX C. a patch from Kailden <kailden at gmail.com>. [ruby-core:06984] * ext/syck/rubyext.c (rb_syck_compile): avoid potential memory leak. * ext/syck/rubyext.c (syck_set_ivars): avoid potential memory leak by explicit symbol allocation. * lib/delegate.rb (Delegator::method_missing): should delegate block as well. * lib/cgi.rb (CGI::QueryExtension::MorphingBody): fix criteria to use Tempfile. A fix from Zev Blut <rubyzbibd at ubit.com>. [ruby-core:06076] * string.c: remove global functions work on $_. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9757 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* remove unused variables.akr2005-12-121-3/+0
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9679 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/digest.c (rb_digest_base_s_digest): add volatile tomatz2005-12-122-72/+30
| | | | | | | | | | | protect temporary context object. [ruby-dev:27979] * ext/iconv/iconv.c (Init_iconv): rb_gc_register_address() should be called before actual variable initialization. [ruby-dev:27986] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9673 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * Makefile.in, configure.in (MINIOBJS): miniruby on HP-UX can not loadnobu2005-09-061-7/+1
| | | | | | | | | | | | | | | extension libraries. * bignum.c (bignew_1, bigadd): K&R style argument actually can't be defined as char. * missing/vsnprintf.c: ANSI compiler supports const keyword. * ext/digest/sha2/extconf.rb: reject platforms which has inttypes.h but no 64bit integer. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9089 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/md5/md5ossl.h, ext/digest/rmd160/rmd160ossl.h,gotoyuzo2005-08-303-0/+3
| | | | | | | | ext/digest/sha1/sha1ossl.h: include <stddef.h> to avoid error in compilation with OpenSSL-0.9.8. [ruby-list:41068] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9049 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * MANIFEST, ext/**/MANIFEST: removed.eban2004-11-015-44/+0
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7170 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * array.c (rb_ary_delete): element comparison might change arraymatz2004-09-172-11/+8
| | | | | | | | | | | | | | | | size. [ruby-dev:24273] * parse.y: make ruby parser reentrant. merge ripper parser to the real one. this change makes ruby require bison. * file.c (rb_file_truncate): clear stdio buffer before truncating the file. [ruby-dev:24191] * ext/digest/digest.c: use rb_obj_class() instead of CLASS_OF which might return singleton class. [ruby-dev:24202] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6919 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/mkmf.rb (init_mkmf): $INCFLAGS also should be lazy-evaluated.nobu2004-02-221-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5808 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/md5/extconf.rb: have_library appends found library.nobu2004-01-211-1/+0
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5522 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/rmd160/extconf.rb: have_library appends found library.nobu2004-01-211-1/+0
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5517 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/defs.h, win32/win3.c, win32/win32.h, file.c: removenobu2004-01-191-6/+2
| | | | | | | useless casts for Borland C. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5502 b2dd03c8-39d4-4d8f-98ff-823fe69b080e