Commit graph

4629 commits

Author SHA1 Message Date
gotoyuzo
270ba8d81e * ext/openssl/ossl_pkcs7.c (ossl_pkcs7_verify): should clear error.
(fix http://bugs.debian.org/394336)

* ext/openssl/ossl_ns_spki.c (ossl_spki_initialize): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11229 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-26 12:06:39 +00:00
usa
d94124b80f * ext/digest/digest.c (Init_digest): typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11225 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-26 06:15:57 +00:00
knu
5038db866f * ext/digest/test.sh: make this script work again.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11220 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-25 07:35:45 +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
670887f5f6 * ext/digest/lib/digest/hmac.rb: Complete half-boiled updates.
* ext/digest/sha2/lib/digest/sha2.rb: Fix #initialize_clone().


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11198 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-20 13:01:55 +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
nobu
96117996a0 * ext/extmk.rb: Borland make needs also -D flags to override variables
in Makefile.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11192 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-19 16:03:45 +00:00
nobu
bbb0bf8049 * bcc32/Makefile.sub ($(LIBRUBY_SO)): execute pre-link hook.
* ext/extmk.rb: workaround for Borland make.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11191 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-19 15:38:31 +00:00
matz
41f3f0eb66 * parse.y (parser_warning, parser_warn): some error message may
contain format specifiers.  a patch from Akinori MUSHA <knu at
  iDaemons.org>.  [ruby-dev:29657]

* regparse.c (onig_rb_warning, onig_rb_warn): ditto.

* ext/bigdecimal/bigdecimal.c (VpException): ditto.

* ext/dl/handle.c (rb_dlhandle_initialize): ditto.

* ext/gdbm/gdbm.c (rb_gdbm_fatal): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11170 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-14 14:33:10 +00:00
knu
d87fc2bdd4 * 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.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11166 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-13 23:23:18 +00:00
knu
694b2c7a29 * ext/digest/digest.c: Improve RDoc documentation further more.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11165 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-13 20:55:33 +00:00
knu
bf8cd1e929 * 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().


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11164 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-13 19:40:01 +00:00
knu
703d2d1612 Add .cvsignore
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11163 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-13 19:08:11 +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
f678390e1f * 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)''.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11154 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-13 11:58:05 +00:00
knu
5cafaa6744 * 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.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11153 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-13 11:52:18 +00:00
knu
2125aafc27 * ext/digest/bubblebabble, ext/digest/digest.c: Rip BubbleBabble
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
2006-10-13 11:46:03 +00:00
knu
b9dea008c7 * ext/digest/digest.c (rb_digest_base_equal): Again, should call
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
2006-10-13 10:55:51 +00:00
knu
53b4c90110 * ext/digest/digest.c (rb_digest_base_equal): Should call digest()
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
2006-10-12 17:43:17 +00:00
matz
f8a90f1c0c * ext/tk/tkutil/tkutil.c (cbsubst_table_setup): need to handle new
character literal (1 char string).

* lib/mkmf.rb: shut up some warnings from tk's extconf.rb.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11139 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-12 09:28:28 +00:00
knu
2391385060 * ext/digest/lib/digest/hmac.rb: Make use of String#bytes.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11134 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-11 17:16:27 +00:00
knu
9b81e26df2 * 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.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11133 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-11 17:14:54 +00:00
knu
945a76d97b * 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.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11131 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-11 12:43:58 +00:00
knu
02d76d0387 * ext/digest/lib/digest/hmac.rb: Add digest/hmac, which implements
HMAC keyed-hashing algorithm.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11126 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-11 07:00:29 +00:00
knu
8eb7570850 * ext/digest/digest.c (rb_digest_base_reset): Do not make
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
2006-10-11 06:05:32 +00:00
matz
fedfa6e5fa * ext/digest/sha1/sha1ossl.h: libssl 0.9.8c-3 defines no
SHA_BLOCK_LENGTH.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11123 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-11 05:57:19 +00:00
knu
cd58f3313e * 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]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11122 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-11 05:15:15 +00:00
knu
775e54fe7b * ext/digest/digest.c (hexdigest_str_new, bubblebabble_str_new):
Perform StringValue() checks properly.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11118 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-10 07:49:00 +00:00
knu
f7579abcec * ext/digest/sha1/depend, ext/digest/sha2/depend: Remove obsolete
dependencies.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11115 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-10 04:22:30 +00:00
nobu
88d6c083ea * ext/extmk.rb, lib/fileutils.rb, lib/mkmf.rb, lib/optparse.rb,
lib/shellwords.rb: get rid of shadowing outer local variable.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11112 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-09 14:41:24 +00:00
knu
0522cf503c * ext/digest/depend: Fix header installation when the build
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
2006-10-06 06:22:56 +00:00
knu
8d6db94ec7 * ext/digest/depend: Install digest.h.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11095 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-05 19:48:11 +00:00
knu
ed6886efb5 * ext/digest/lib/md5.rb, ext/digest/lib/sha1.rb: Remove those
compatibility stub libraries.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11092 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-05 19:25:31 +00:00
knu
60f63ff93d * ext/digest/digest.c: Make hexdigest() always call digest() internally.
* ext/digest/digest.c: Add bubblebabble().


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11091 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-05 19:13:00 +00:00
knu
0ad60d4f28 * ext/digest/digest.c: Allow subclassing in Ruby.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11089 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-05 17:39:51 +00:00
knu
8d0e66afdf * ext/digest/digest.c (hexdigest_str_new): Add a string size check.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11088 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-05 17:07:59 +00:00
knu
b9673f64f1 * ext/digest/digest.[ch]: Since the argument order of
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
2006-10-05 11:09:42 +00:00
nagai
438e33e3d2 * ext/tk/lib/tkextlib/tile.rb, lib/tkextlib/tile/* : support Tile 0.7.6.
* ext/tk/lib/tkextlib/SUPPORT_STATUS: [ruby-talk:211939] check links
  of extensions.
* ext/tk/lib/tkextlib/blt/container.rb: define instance methods properly.
* ext/tk/lib/tkextlib/tile/tcombobox.rb: bug fix [ruby-talk:213003].
* ext/tk/lib/tkextlib/tile/tnotebook.rb: ditto.
* ext/tk/lib/tkextlib/tile/treeview.rb: ditto.
* ext/tk/lib/tkextlib/tile/sizegrip.rb: [new] add 'ttk::sizegrip' widget.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11081 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-04 09:52:54 +00:00
nobu
b004fa2428 * Makefile.in, common.mk, ext/extmk.rb, win{32,ce}/Makefile.in: keep
LIBRUBY_SO unless need to be removed.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11060 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-01 15:00:45 +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
nobu
d5195959bf * ext/extmk.rb: extout is needed for also clean.
fixed: [ruby-core:08944]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11048 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-29 00:37:20 +00:00
knu
3c29f3feef * ext/digest/md5/md5init.c (Init_md5): Now that we have digest.rb,
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
2006-09-27 14:34:49 +00:00
matz
9856258cd0 socket.c: a rdoc patch from Daniel Berger <djberg96 at gmail.com>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11039 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-26 23:31:35 +00:00
nobu
e8454ae776 * common.mk (no-install): not install rdoc actually.
* common.mk (install-doc, no-install-doc): use instruby.rb.

* instruby.rb: rdoc installation.

* ext/extmk.rb: expand ruby executable names.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10985 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-21 13:58:33 +00:00
matz
c35290824a * ext/etc/etc.c (etc_getpwuid): uid integer should be wraped in
uid_t value.  [ruby-core:08897]

* ext/etc/etc.c (etc_getpwuid): uid_t may be bigger than plain
  'int' type.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10980 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-21 05:12:57 +00:00
matz
d3f545235a * ext/gdbm/gdbm.c: add RDoc documentation. a patch from Peter
Adolphs <futzilogik at users dot sourceforge dot net>.
  [ruby-doc:1223]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10965 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-20 00:30:38 +00:00
nobu
b1ad30b2f7 * ext/pty/pty.c (establishShell): parent pid is not used.
* ext/pty/pty.c (freeDevice): not used.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10946 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-16 07:21:02 +00:00
nobu
006f77a2f1 * ext/io/wait/extconf.rb: suspicious checking_for.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10945 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-16 07:15:22 +00:00
nobu
5e6bf721d5 * ext/dbm/extconf.rb: allow multiple candidates for dbm-type.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10944 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-16 07:14:37 +00:00
nobu
f06362a4f9 * Makefile.in, common.in, instruby.rb, ext/extmk.rb, lib/mkmf.rb:
use instruby.rb to install extensions instead of ext/extmk.rb.

* instruby.rb: store installed list into the file.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10943 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-16 07:06:57 +00:00