set svn:eol-style
0 lines of code changed in:
Do alias << update.
1 lines of code changed in:
* ext/digest/lib/digest/hmac.rb: Fix problems with update
timing. [Reported by: oss-ruby@technorama.net]
6 lines of code changed in:
* ext/digest/lib/digest/hmac.rb (Digest::HMAC::update): Minor
optimization.
* ext/digest/digest.c (rb_digest_instance_equal): Allow comparing
a digest instance with another of a different class.
2 lines of code changed in:
* ext/digest/lib/digest/hmac.rb: Complete half-boiled updates.
* ext/digest/sha2/lib/digest/sha2.rb: Fix #initialize_clone().
9 lines of code changed in:
* ext/digest: Prefix C constants with RUBY_ and C type names with
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.
28 lines of code changed in:
* 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:
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.
61 lines of code changed in:
* ext/digest/lib/digest/hmac.rb: Make use of String#bytes.
1 lines of code changed in:
* ext/digest/lib/digest/hmac.rb: Add digest/hmac, which implements
HMAC keyed-hashing algorithm.
263 lines of code changed in: