ruby-cvs:18475
From: (knu) <knu ruby-lang.org>
Date: Wed, 25 Oct 2006 17:54:06 +0900
Subject: [ruby-cvs:18475] ruby, ruby/ext/digest, ruby/ext/digest/bubblebabble, ruby/ext/digest/lib, ruby/ext/digest/lib/digest, ruby/ext/digest/md5, ruby/ext/digest/rmd160, ruby/ext/digest/sha1, ruby/ext/digest/sha2, ruby/ext/digest/sha2/lib/digest, ruby/test/digest: * ext/digest, test/digest/test_digest.rb: Merge from trunk:
knu Wed, 25 Oct 2006 17:54:06 +0900
Modified files: (Branch: ruby_1_8)
ruby:
ChangeLog
ruby/ext/digest:
digest.c digest.h test.sh
ruby/ext/digest/lib:
digest.rb
ruby/ext/digest/md5:
md5init.c
ruby/ext/digest/rmd160:
rmd160init.c
ruby/ext/digest/sha1:
sha1init.c
ruby/ext/digest/sha2:
sha2init.c
ruby/test/digest:
test_digest.rb
Added files: (Branch: ruby_1_8)
ruby/ext/digest/bubblebabble:
.cvsignore bubblebabble.c depend extconf.rb
ruby/ext/digest/lib/digest:
hmac.rb
ruby/ext/digest/sha2/lib/digest:
sha2.rb
Removed files: (Branch: ruby_1_8)
ruby/ext/digest:
digest.txt digest.txt.ja
Log:
* ext/digest, test/digest/test_digest.rb: Merge from trunk:
- Introduce versioning in Digest::Base API, and prefix C
constants with RUBY_ and C type names with rb_ to avoid name
clash in writing extensions.
- Introduce Digest::Class and Digest::Instance for ease of
implementing subclasses and add-ons.
- Digest::Instance module requires and assumes that any instance
be resettable and clonable. An instance method #new() is
added so digest instances work just like digest classes.
- The constructor does no longer take an initial string to feed;
digest() and hexdigest() now do, instead. This allows digest
classes to take their own hashing parameters.
- Make some changes to digest() and hexdigest() class methods,
which now take extra arguments, which are passed through to
the constructor in an internal call.
- Add #digest_length/size/length() and #block_length(),
- 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.
- Rip BubbleBabble support out of the base class and have a
separate module named digest/bubblebabble.
- Remove RD documents in favor of newly written and embedded
RDoc documentation.
Revision Changes Path
1.2673.2.1965 +26 -0 ruby/ChangeLog
http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/ChangeLog?cvsroot=src&r1=1.2673.2.1964&r2=1.2673.2.1965
1.14.2.6 +461 -269 ruby/ext/digest/digest.c
http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/ext/digest/digest.c?cvsroot=src&r1=1.14.2.5&r2=1.14.2.6
1.1.4.3 +12 -8 ruby/ext/digest/digest.h
http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/ext/digest/digest.h?cvsroot=src&r1=1.1.4.2&r2=1.1.4.3
1.1.4.1 -REMOVED- ruby/ext/digest/digest.txt
http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/ext/digest/digest.txt?cvsroot=src&rev=1.1
1.1.4.1 -REMOVED- ruby/ext/digest/digest.txt.ja
http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/ext/digest/digest.txt.ja?cvsroot=src&rev=1.1
1.2.2.1 +2 -5 ruby/ext/digest/test.sh
http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/ext/digest/test.sh?cvsroot=src&r1=1.2&r2=1.2.2.1
1.1.2.1 +0 -1 ruby/ext/digest/bubblebabble/.cvsignore
http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/ext/digest/bubblebabble/.cvsignore?cvsroot=src&r1=1.1&r2=1.1.2.1
1.3.2.1 +2 -2 ruby/ext/digest/bubblebabble/bubblebabble.c
http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/ext/digest/bubblebabble/bubblebabble.c?cvsroot=src&r1=1.3&r2=1.3.2.1
1.1.2.1 +0 -0 ruby/ext/digest/bubblebabble/depend
http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/ext/digest/bubblebabble/depend?cvsroot=src&r1=1.1&r2=1.1.2.1
1.2.2.1 +0 -0 ruby/ext/digest/bubblebabble/extconf.rb
http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/ext/digest/bubblebabble/extconf.rb?cvsroot=src&r1=1.2&r2=1.2.2.1
1.5.2.2 +30 -11 ruby/ext/digest/lib/digest.rb
http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/ext/digest/lib/digest.rb?cvsroot=src&r1=1.5.2.1&r2=1.5.2.2
1.2.2.3 +78 -67 ruby/ext/digest/lib/digest/hmac.rb
http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/ext/digest/lib/digest/hmac.rb?cvsroot=src&r1=1.2.2.2&r2=1.2.2.3
1.5.2.3 +12 -8 ruby/ext/digest/md5/md5init.c
http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/ext/digest/md5/md5init.c?cvsroot=src&r1=1.5.2.2&r2=1.5.2.3
1.3.2.3 +13 -12 ruby/ext/digest/rmd160/rmd160init.c
http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/ext/digest/rmd160/rmd160init.c?cvsroot=src&r1=1.3.2.2&r2=1.3.2.3
1.3.2.3 +14 -10 ruby/ext/digest/sha1/sha1init.c
http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/ext/digest/sha1/sha1init.c?cvsroot=src&r1=1.3.2.2&r2=1.3.2.3
1.2.2.3 +12 -8 ruby/ext/digest/sha2/sha2init.c
http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/ext/digest/sha2/sha2init.c?cvsroot=src&r1=1.2.2.2&r2=1.2.2.3
1.2.2.1 +1 -1 ruby/ext/digest/sha2/lib/digest/sha2.rb
http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/ext/digest/sha2/lib/digest/sha2.rb?cvsroot=src&r1=1.2&r2=1.2.2.1
1.2.2.3 +15 -15 ruby/test/digest/test_digest.rb
http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/test/digest/test_digest.rb?cvsroot=src&r1=1.2.2.2&r2=1.2.2.3