1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
Commit graph

17 commits

Author SHA1 Message Date
knu
c02fa39463 Make Digest() thread-safe.
* ext/digest/lib/digest.rb (Digest()): This function should now be
  thread-safe.  If you have a problem with regard to on-demand
  loading under a multi-threaded environment, preload "digest/*"
  modules on boot or use this method instead of directly
  referencing Digest::*. [Bug #9494]
  cf. https://github.com/aws/aws-sdk-ruby/issues/525

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48213 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-31 13:21:51 +00:00
zzak
4c1e390fa8 * ext/digest/*: [DOC] Fix several typos and broken http links.
Improved examples for Digest overview and fixed a broken example in
  Digest::HMAC overview. This patch also adds a description of
  Digest::SHA256.bubblebabble to the Digest overview.

  Patched by @stomar [Bug #9027]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43668 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-13 10:09:28 +00:00
knu
07a6b4cbb5 * ext/digest/lib/digest.rb (Digest::Class.file): Take optional
arguments that are passed to the constructor of the digest
  class.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40879 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-05-21 12:41:34 +00:00
drbrain
c648243c3d * ext/digest: Improve documentation of Digest, Digest::HMAC and
Digest::SHA2.  Patch by Pete Higgins.  [Ruby 1.9 - Bug #4702]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31594 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-16 20:52:55 +00:00
nahi
94edc5a9d9 * ext/digest/lib/digest.rb: removed unused exception variable
assignment to avoid a warning.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29210 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-09-10 04:13:21 +00:00
knu
d8f265b332 * ext/digest/digest.c (rb_digest_instance_hexdigest_bang): Fix
rdoc.

* ext/digest/lib/digest.rb (Digest::Class.base64digest)
  (Digest::Instance#base64digest{,!}): New methods.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26339 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-17 19:12:10 +00:00
nobu
287a34ae0d * {ext,lib,test}/**/*.rb: removed trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22784 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-06 03:56:38 +00:00
matz
0e83f22cf5 * ext/digest/lib/digest.rb (Digest::self.const_missing): avoid
infinite recursive const_missing call.  [ruby-talk:262193]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12851 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-28 00:44:08 +00:00
knu
559be019de * ext/digest/lib/digest.rb (Digest::self.const_missing): Drop
autoloads for sha2 classes in favor of handling in
  const_missing(), to work around a problem exposed on OS X.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11736 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-14 12:45:59 +00:00
knu
0c80ce785d * ext/digest/lib/digest.rb: Follow the framework updates.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11200 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-21 08:52:09 +00:00
knu
b2c7fe1bbf * 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.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11197 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-20 12:48:35 +00:00
knu
3a4ce48c75 * ext/digest/lib/digest.rb (Digest): Try to auto-load non-standard
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
2006-10-13 12:02:32 +00:00
knu
480496a806 * ext/digest/lib/digest.rb (Digest): Require digest.so and fix the
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
2006-09-29 04:21:30 +00:00
akr
2043c39808 * ext/digest/lib/digest.rb (Digest::Base.file): open a file in binary
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
2006-09-14 15:05:22 +00:00
akr
803cabaced add a document for Digest::Base.file.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10929 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-14 06:21:56 +00:00
akr
d6ff7b526a * ext/digest/lib/digest.rb (Digest::Base.file): new method.
[ruby-dev:29572]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-14 05:39:40 +00:00
akr
3d9fc0d7d0 * ext/digest/lib/digest.rb: new file.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10924 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-13 16:03:23 +00:00