Commit graph

175 commits

Author SHA1 Message Date
matz
cff080e563 * ext/openssl/ossl_digest.c (Init_ossl_digest): avoid recursing
require.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@23506 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-20 23:56:40 +00:00
akr
69ca9dc5db * ext/openssl/ossl_digest.c (GetDigestPtr): use StringValueCStr
instead of STR2CSTR.

* ext/openssl/ossl_pkey_ec.c (ossl_ec_key_initialize): ditto.
  (ossl_ec_group_initialize): ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@23015 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-20 09:04:43 +00:00
akr
6bbd8a58dd * ext/openssl/ossl_ssl.c: revert incomplete read_nonblock
implemenatation.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@23008 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-19 14:19:35 +00:00
shugo
151527ceca * ext/openssl/ossl_ocsp.c (ossl_ocspbres_verify): OCSP_basic_verify
returns positive value on success, not non-zero.  [ruby-core:21762]
  backported r22440 from trunk.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@22646 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-26 05:32:02 +00:00
technorama
31dc22d42d * ext/openssl/ossl_ssl.c: Server Name Indication support.
new methods SSLContext#server_name_cb=, SSLSocket#hostname=.

* test/openssl/test_ssl.rb: Tests for above.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@21772 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-25 20:37:52 +00:00
matz
ffe57003cc * ext/openssl/ossl_ssl.c (ossl_ssl_read_nonblock):
OpenSSL::SSL::SSLSocket should implement read_nonblock.  a patch
  from Aaron Patterson in [ruby-core:20277].  fix: #814 [ruby-core:20241]

* ext/tk/lib/tk/menu.rb: TkOptionMenubutton.new fails to treat

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@20494 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-04 07:26:28 +00:00
nobu
4cf6bcf78d * ext/openssl/ossl_ocsp.c (ossl_ocspres_initialize): fix for
initialization of r18168.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@18975 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-31 04:45:44 +00:00
nobu
337f8efb63 * ext/openssl/ossl_x509attr.c (ossl_x509attr_initialize): fix for
initialization of r18168.

* ext/openssl/ossl_ocsp.c (ossl_ocspreq_initialize): ditto.

* ext/openssl/ossl_x509ext.c (ossl_x509ext_initialize): ditto.
    
* ext/openssl/ossl_x509name.c (ossl_x509name_initialize): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@18943 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-30 05:59:58 +00:00
nobu
9a65958db9 * configure.in (rb_cv_missing__dtos18, rb_cv_missing_fconvert),
ext/digest/md5/md5.c, ext/openssl/ossl.c (main),
  ext/socket/extconf.rb (ipv6, wide-getaddrinfo): main should be int.

* main.c (main), win32/winmain.c, wince/wincemain.c (WinMain): envp is
  no longer used so long time.  based on a patch from Peter Bowen at
  [ruby-core:18208]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@18459 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-09 23:15:08 +00:00
nobu
4ffe1fe6ba * ext/openssl/openssl_missing.h (d2i_of_void): define for older
versions.  [ruby-dev:35637]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@18181 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-23 08:04:25 +00:00
nobu
e934121534 * ext/openssl: suppress warnings.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@18172 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-22 19:16:41 +00:00
matz
281d835f89 wrong commit; sorry
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@17450 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-19 17:26:20 +00:00
matz
ed536836db * lib/mathn.rb (Rational::power2): typo fixed. [ruby-core:17293]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@17449 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-19 17:22:33 +00:00
usa
82ce1f0a8d * ext/openssl/ossl.h: include winsock.h if USE_WINSOCK2 is not defined.
a patch from arton <artonx at yahoo.co.jp> in [ruby-dev:35078]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@17108 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-12 12:06:54 +00:00
knu
6a7a00325e * ext/openssl/ossl_ssl_session.c (ossl_ssl_session_initialize):
Add a null check for ssl; submitted by akira yamada
  in [ruby-dev:34950].

* ext/openssl/ossl_ssl.c (Init_ossl_ssl): Define OP_NO_TICKET if
  SSL_OP_NO_TICKET is present; submitted by akira yamada
  in [ruby-dev:34944].

* test/openssl/test_ssl.rb (OpenSSL#test_server_session): Add a
  workaround for the case where OpenSSL is configured with
  --enable-tlsext; submitted by akira yamada in [ruby-dev:34944].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@16843 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-05 11:39:21 +00:00
knu
019864bfc1 * ext/openssl/ossl_bn.c (ossl_bn_s_rand, ossl_bn_s_pseudo_rand):
Int should be enough here.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@16692 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-29 18:15:50 +00:00
knu
cf00a9e4bd * ext/openssl/ossl_bn.c (ossl_bn_s_rand, ossl_bn_s_pseudo_rand),
ext/openssl/ossl_pkey_dh.c (ossl_dh_s_generate)
  (ossl_dh_initialize),
  ext/openssl/ossl_pkey_dsa.c (ossl_dsa_s_generate),
  ext/openssl/ossl_rand.c (ossl_rand_bytes)
  (ossl_rand_pseudo_bytes, ossl_rand_egd_bytes),
  ext/openssl/ossl_x509store.c (ossl_x509stctx_set_error): Do not
  use FIX2INT() without checking the value type.  Use NUM2INT()
  instead; found by akr in [ruby-dev:34890].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@16690 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-29 17:44:08 +00:00
knu
56c8f92e03 * ext/openssl/ossl_pkcs5.c (ossl_pkcs5_pbkdf2_hmac): Fix the type
of md; pointed out by Takahiro Kambe <taca at back-street.net>
  in [ruby-dev:34748].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@16479 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-19 09:29:39 +00:00
knu
c0687936b2 * ext/openssl/openssl_missing.c (HMAC_CTX_copy): adopted
prototype change in openssl bundled with newer OpenBSD.
  a patch from Takahiro Kambe <taca at back-street.net> in
  [ruby-dev:34691].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@16465 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-19 02:56:13 +00:00
kazu
545c0d6aa3 * lib/net/pop.rb: backported from 1.9. bug#19003
* ext/openssl/lib/openssl/ssl.rb: set_params; backported from 1.9.
  bug#19552, [ruby-dev:34402]

* ext/openssl/ossl_ssl.c: ditto.

* test/openssl/test_ssl.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@16184 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-24 14:52:21 +00:00
technorama
ca5c47cb1d * ext/openssl/ossl_ssl.c: initialize session class.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@16091 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-20 05:33:56 +00:00
technorama
1401783153 * ext/openssl/ossl_pkey_{ec,dh,dsa,rsa}.c: Remove useless warnings.
* ext/openssl/ossl_asn1.c: Simplify code.

* ext/openssl/ossl_ssl_session.c Fix compiler warnings.
  Undefine #id if SSL_SESSION_get_id is not supported.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@15611 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-26 07:11:23 +00:00
technorama
00be63fca5 Mon Feb 25 17:30:29 2008 Technorama Ltd. <oss-ruby@technorama.net>
* ext/openssl/digest.c ext/openssl/lib/openssl/digest.rb:
	  Commit patch #9280 from Akinori MUSHA.
	  Simplify the OpenSSL::Digest class and make use of the
	  existing Digest framework.
	  Enhance performance.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@15600 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-25 08:48:57 +00:00
technorama
55180306dd * ext/openssl/ossl_ssl.c: Only show a warning if the default
DH callback is actually used.

* ext/openssl/ossl_rand.c: New method: random_add().



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@14726 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-27 01:50:50 +00:00
usa
d70762f577 * ext/openssl/lib/openssl/buffering.rb (read, readpartial): revert
r12496. handling EOF is a little differnt in ruby 1.8 and ruby 1.9.
	  [ruby-dev:31979]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@13706 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-15 08:29:08 +00:00
gotoyuzo
b4b36c06fa * lib/net/http.rb, lib/open-uri.rb: remove
Net::HTTP#enable_post_connection_check.  [ruby-dev:31960]

* lib/net/imap.rb: hostname should be verified against server's
  indentity as persented in the server's certificate. [ruby-dev:31960]

* ext/openssl/lib/net/telnets.rb, ext/openssl/lib/net/ftptls.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@13657 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-08 11:16:54 +00:00
gotoyuzo
80865ba2db * lib/net/http.rb: an SSL verification (the server hostname should
be matched with its certificate's commonName) is added.
  this verification can be skipped by
  "Net::HTTP#enable_post_connection_check=(false)".
  suggested by Chris Clark <cclark at isecpartners.com>

* lib/net/open-uri.rb: use Net::HTTP#enable_post_connection_check to
  perform SSL post connection check.

* ext/openssl/lib/openssl/ssl.c
  (OpenSSL::SSL::SSLSocket#post_connection_check): refine error message.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@13500 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-23 22:21:42 +00:00
nobu
a86b7ee462 * ext/openssl/ossl_config.c (ossl_config_set_section): do not
initialize aggregations with dynamic values.  [ruby-talk:259306]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@12821 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-20 06:22:54 +00:00
nobu
f298a1a670 * ext/digest/digest.c (rb_digest_instance_update,
rb_digest_instance_finish, rb_digest_instance_reset,
  rb_digest_instance_block_length): %s in rb_raise() expects char*.
  [ruby-dev:31222]

* ext/openssl/ossl.h: include ossl_pkcs5.h.  [ruby-dev:31231]

* ext/openssl/ossl_pkcs5.h: new file for PKCS5.  [ruby-dev:31231]

* ext/openssl/ossl_x509name.c (ossl_x509name_to_s): use ossl_raise()
  instead of rb_raise().  [ruby-dev:31222]

* ext/sdbm/_sdbm.c: DOSISH platforms need io.h.  [ruby-dev:31232]

* ext/syck/syck.h: include stdlib.h for malloc() and free().
  [ruby-dev:31232]

* ext/syck/syck.h (syck_parser_set_input_type): prototype added.
  [ruby-dev:31231]

* win32/win32.c: include mbstring.h for _mbspbrk().  [ruby-dev:31232]

* win32.h (rb_w32_getcwd): prototype added.  [ruby-dev:31232]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@12800 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-15 13:24:51 +00:00
technorama
7137a314b3 * ext/openssl/{extconf.rb,ossl_ssl_session.c}:
Fix ruby-Bugs-11513.

* ext/openssl/ossl_pkey_ec.c
  New methods EC::Point.[eql,make_affine!,invert!,on_curve?,infinity?]
  By default output the same key form as the openssl command.

* ext/openssl/ossl_rand.c
  New method Random.status?

* test/openssl/test_ec.rb
  New tests.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@12572 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-18 09:03:15 +00:00
technorama
18342ff8e0 import OpenSSL from trunk
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@12496 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-08 15:02:04 +00:00
knu
7740080cdb * ext/openssl/ossl_asn1.c (Init_ossl_asn1): Let rdoc know about
externally defined modules; submitted by Technorama
  Ltd. <oss-ruby AT technorama.net> in [ruby-bugs:PR#4704].

* ext/openssl/ossl_bn.c (Init_ossl_bn): Ditto.

* ext/openssl/ossl_cipher.c (Init_ossl_cipher): Ditto.

* ext/openssl/ossl_digest.c (Init_ossl_digest): Ditto.

* ext/openssl/ossl_hmac.c (Init_ossl_hmac): Ditto.

* ext/openssl/ossl_pkey.c (Init_ossl_pkey): Ditto.

* ext/openssl/ossl_pkey_dh.c (Init_ossl_dh): Ditto.

* ext/openssl/ossl_pkey_dsa.c (Init_ossl_dsa): Ditto.

* ext/openssl/ossl_pkey_rsa.c (Init_ossl_rsa): Ditto.

* ext/openssl/ossl_rand.c (Init_ossl_rand): Ditto.

* ext/openssl/ossl_ssl.c (Init_ossl_ssl): Ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@12042 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-03-12 04:07:08 +00:00
usa
d40ee16925 * ext/openssl/extconf.rb: no need to check unistd.h and sys/time.h.
they are already checked at configure.
  reported by KOBAYASHI Yasuhiro [ruby-list:43225]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@11933 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-28 09:36:06 +00:00
matz
46fa18da5b Revert r11453
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@11454 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-03 03:14:57 +00:00
matz
4ee717dcae * io.c (ruby_dup): start GC on ENOMEM as well.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@11453 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-03 02:51:44 +00:00
gotoyuzo
228e8f2434 * ext/openssl/ossl_ocsp.c: OpenSSL::OCSP::OSCPError should be
subclass of OpenSSL::OpenSSLError. [ruby-dev:29980]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@11320 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-12-01 22:11:51 +00:00
gotoyuzo
aa1160ada8 * 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/branches/ruby_1_8@11229 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-26 12:06:39 +00:00
matz
5958a6f8e1 * ext/openssl/ossl.h: move <ruby.h> inclusion point to shut up
Solaris compiler.  [ruby-core:08114]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10620 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-27 07:46:13 +00:00
akr
4c99ec8402 add extconf.h.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10389 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-06-25 12:20:27 +00:00
gotoyuzo
128eaaad11 * ext/openssl/extconf.rb: add check for OBJ_NAME_do_all_sorted.
* ext/openssl/ossl_cipher.c (ossl_s_ciphers): new method
  OpenSSL::Cipher.ciphers. it returns all the cipher names.

* ext/openssl/lib/openssl/cipher.rb:
  - add constants AES128, AES192, AES256. [ruby-dev:28610]
  - reimplement without eval()

* ext/openssl/lib/openssl/digest.rb: reimplement without eval().

* test/openssl/test_cipher.rb, test_digest: fix about reimplemented
  features.

* sample/openssl/cipher.rb: rewrite all.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10339 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-06-20 11:18:16 +00:00
gotoyuzo
13d16b8de4 * ext/openssl/extconf.rb: use create_header.
* ext/openssl/ossl.h, ext/openssl/openssl_missing.h:
  include RUBY_EXTCONF_H.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10209 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-06-02 10:03:16 +00:00
gotoyuzo
66c81f9be0 * ext/openssl/lib/openssl/ssl.rb
(OpenSSL::SSL::SocketForwarder#setsockopt,getsockopt): typo fixed.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10183 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-05-23 18:14:05 +00:00
gotoyuzo
27a80110fc * ext/openssl/ossl_asn1.c (ossl_asn1_decode0): should initialize
flag. [ruby-core:07785]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10117 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-04-29 13:52:15 +00:00
gotoyuzo
8dd7e8bee6 * ext/openssl/ossl_ssl.c, ext/openssl/ossl_nsspki.c: fix typo.
[ruby-core:07571]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10037 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-03-17 10:10:53 +00:00
gotoyuzo
6f1c875b07 * ext/openssl/ossl_ssl.c, ext/openssl/ossl_nsspki.c: should use
"rb_str_new(0, 0)" to make empty string.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10034 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-03-15 07:42:00 +00:00
gotoyuzo
406812a796 * ext/openssl/ossl.h (OSSL_Debug): should not use __func__.
[ruby-dev:28339]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9960 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-02-19 16:00:04 +00:00
gotoyuzo
40761f5925 * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SSLSocket#post_connection_chech):
treat wildcard character in commonName. [ruby-dev:28121]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9742 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-12-26 23:31:04 +00:00
gotoyuzo
b54ab5610b * ext/openssl/extconf.rb: check for X509V3_EXT_nconf_nid.
* ext/openssl/ossl_x509ext.c (MakeX509ExtFactory): should use
  OPENSSL_malloc to allocate X509V3_CTX.

* ext/openssl/ossl_x509ext.c (ossl_x509extfactory_create_ext): use
  X509V3_EXT_nconf_nid to avoid SEGV (and to build extensions which
  values are placed in separate section).

* test/openssl/test_x509ext.rb: new file.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9592 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-11-22 22:29:13 +00:00
gotoyuzo
4798cd1bb3 * ext/openssl/extconf.rb: should check ERR_peek_last_error().
[ruby-dev:27597]

* ext/openssl/ossl.c (ossl_raise): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9488 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-11-01 01:52:13 +00:00
gotoyuzo
787d0e3254 * ext/openssl/ossl_cipher.c (ossl_cipher_update): input data must
not be empty. [ruby-talk:161220]

* test/openssl/test_cipher.rb: add test for Cipher#update("").


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9485 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-10-30 20:50:48 +00:00