[root]/ext/digest
bubblebabble
(4 files, 155 lines)
lib
(1 files, 48 lines)
digest
(1 files, 274 lines)
md5
(8 files, 601 lines)
rmd160
(8 files, 618 lines)
sha1
(8 files, 416 lines)
sha2
(6 files, 1113 lines)
lib
(1 files, 73 lines)
digest
(0 files, 0 lines)
Author | Changes | Lines of Code | Lines per Change |
---|---|---|---|
Totals | 96 (100.0%) | 1605 (100.0%) | 16.7 |
knu | 58 (60.4%) | 1433 (89.3%) | 24.7 |
matz | 10 (10.4%) | 113 (7.0%) | 11.3 |
akr | 3 (3.1%) | 23 (1.4%) | 7.6 |
drbrain | 2 (2.1%) | 16 (1.0%) | 8.0 |
nobu | 6 (6.3%) | 8 (0.5%) | 1.3 |
usa | 3 (3.1%) | 4 (0.2%) | 1.3 |
eban | 5 (5.2%) | 4 (0.2%) | 0.8 |
michal | 1 (1.0%) | 2 (0.1%) | 2.0 |
H_Konishi | 1 (1.0%) | 2 (0.1%) | 2.0 |
shyouhei | 7 (7.3%) | 0 (0.0%) | 0.0 |
better error message
1 lines of code changed in:
* ext/digest/digest.c (get_digest_base_metadata): Allow inheriting
Digest::Base subclasses, which was unintentionally made
impossible while restructuring Digest classes.
8 lines of code changed in:
* ext/bigdecimal/bigdecimal.c (BigDecimal_load): Silence warnings
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.
2 lines of code changed in:
set svn:eol-style
0 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.
4 lines of code changed in:
* ext/digest/digest.c (Init_digest): typo.
1 lines of code changed in:
* ext/digest/test.sh: make this script work again.
1 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.
418 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.
119 lines of code changed in:
* ext/digest/digest.c: Improve RDoc documentation further more.
13 lines of code changed in:
* ext/digest/digest.c: Improve RDoc documentation.
* 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().
33 lines of code changed in:
* ext/digest/digest.c (Init_digest): Digest::Base.new() does no
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)''.
0 lines of code changed in:
* ext/digest/digest.c, ext/digest/md5/md5init.c,
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.
69 lines of code changed in:
* ext/digest/bubblebabble, ext/digest/digest.c: Rip BubbleBabble
support out of the base class and have a separate module named
digest/bubblebabble.
0 lines of code changed in:
* ext/digest/digest.c (rb_digest_base_equal): Again, should call
digest() of a subclass instead of the one defined in the base
class.
1 lines of code changed in:
* ext/digest/digest.c (rb_digest_base_equal): Should call digest()
of a subclass instead of the one defined in the base class.
2 lines of code changed in:
* ext/digest/digest.c (get_digest_base_metadata): Use an instance
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.
2 lines of code changed in:
* ext/digest/digest.c (rb_digest_base_alloc,
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.
12 lines of code changed in:
* ext/digest/digest.c (rb_digest_base_reset): Do not make
recursive calls, but call initialize() when reset() is not
defined in a subclass.
9 lines of code changed in:
* ext/digest/digest.c (rb_digest_base_reset, Init_digest): Add
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]
31 lines of code changed in:
(47 more)