Commit graph

804 commits

Author SHA1 Message Date
gotoyuzo
45ca1d0754 should check retuen value of rb_protect.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4562 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-17 09:40:17 +00:00
gotoyuzo
ad143475b9 fix command line in 'dep'.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4559 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-17 09:09:31 +00:00
gotoyuzo
30103702c3 * ext/openssl: all files are reviewed to simplify and avoid memory leak.
* ext/openssl/extconf.rb: add check for assert.h.

* ext/openssl/ossl.c (ossl_buf2str): new function to convert
  C buffer to String and free buffer.

* ext/openssl/ossl.c (ossl_x509_ary2sk): new function to convert
  Array of OpenSSL::X509 to STACK_OF(X509) with exception safe.

* ext/openssl/ossl.c (ossl_to_der, ossl_to_der_if_possible): new
  functions to convert object to DER string.

* ext/openssl/ossl.h: ditto.

* ext/openssl/ossl_bio.c (ossl_membio2str): new function to convert
  BIO to String object and free BIO.

* ext/openssl/ossl_bio.h: ditto.

* ext/openssl/ossl_pkcs7.c (ossl_pkcs7_to_der): add for "to_der".

* ext/openssl/ossl_x509name.c (ossl_x509name_to_der): ditto.

* ext/openssl/ossl_x509ext.c (ossl_x509ext_to_der): ditto.

* ext/openssl/ossl_x509ext.c (create_ext_from_array): removed
  and reimplement in openssl/x509.rb.

* ext/openssl/ossl_x509attr.c: reimplemented and disable some
  method temporarily. this class doesn't work fine without ASN.1
  data support;-) I'll rewrite in near future.

* ext/openssl/lib/openssl/x509.c (X509::Attribute): get rid off
  unused code.

* ext/openssl/lib/openssl/x509.c (X509::ExtensionFactory): refine all.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4558 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-17 09:05:02 +00:00
michal
bd96b4c8cc OpenSSL update
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4552 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-12 13:46:48 +00:00
matz
fc8e62d0df * bignum.c (rb_big_and): convert argument using 'to_int'.
* bignum.c (rb_big_or): ditto.

* bignum.c (rb_big_xor): ditto.

* eval.c (rb_f_require): allow "require" on $SAFE>0, if feature
  name is not tainted.

* lib/rexml/parsers/baseparser.rb (REXML::Parsers::BaseParser::stream):
  Supports StringIO.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4549 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-12 03:16:31 +00:00
gotoyuzo
fb65eed72e * ext/openssl/ossl.h: define OSSL_NO_CONF_API for win32 platform.
libeay32.dll doesn't export functions defined in conf_api.h.
  this workaround is to avoid link error.

* ext/openssl/ossl_config.c (ossl_config_initialize): ditto.

* ext/openssl/ossl_config.c (ossl_config_add_value): ditto.

* ext/openssl/ossl_config.c (set_conf_section_i): should check
  if the argument is Array.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4544 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-10 13:58:31 +00:00
usa
3587c1c725 * eval.c (win32_get_exception_list): avoid VC7 warning.
[ruby-win32:577]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4542 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-10 13:43:27 +00:00
gotoyuzo
9edcc5e99a * ext/openssl/ossl_config.rb: avoid compile error in OpenSSL-0.9.6.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4538 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-08 20:19:01 +00:00
nagai
8951a69a16 * multi-tk.rb: modify security check at creating a new interpreter
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4534 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-08 13:16:57 +00:00
eban
4b98d17022 * ext/openssl/ossl_config.c (ext/openssl/ossl_config.c): typofix (ossl_raise).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4533 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-08 11:02:35 +00:00
gotoyuzo
78ff3833fb * ext/openssl/ossl.h: include openssl/conf.h and openssl/conf_api.h.
* ext/openssl/ossl_config.c: refine all with backward compatibility.

* ext/openssl/ossl_config.h: export GetConfigPtr() and DupConfigPtr().

* ext/openssl/ossl_x509.c: added new constants under X509 module.
  DEFAULT_CERT_AREA, DEFAULT_CERT_DIR, DEFAULT_CERT_FILE,
  DEFAULT_CERT_DIR_ENV, DEFAULT_CERT_FILE_ENV and DEFAULT_PRIVATE_DIR.

* ext/openssl/ossl_x509ext.c (ossl_x509extfactory_free): don't free
  the members of the struct. it's left to GC.

* ext/openssl/ossl_x509ext.c (ossl_x509_set_config): add for config=.

* ext/openssl/ossl_x509ext.c (Xossl_x509extfactory_initialize):
  add attr readers: issuer_certificate, subject_certificate,
  subject_request, crl and config.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4531 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-08 10:31:38 +00:00
nagai
865ff7fb4f * tcltklib.c (lib_mainloop_core): fixed signal-trap bug
* multi-tk.rb, tk.rb, tkafter.rb, tkcanvas.rb, tkfont.rb, tktext.rb,
  tkvirtevent.rb : Ruby/Tk works at $SAFE == 4


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4527 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-07 07:10:44 +00:00
gotoyuzo
40fce3e7ee * ext/openssl/ruby_missing.c: rid of unnecessary backward
compatibility stuff.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4523 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-06 08:56:57 +00:00
gotoyuzo
256d273e69 * ext/openssl/ruby_missing.c: rid of unnecessary backward
compatibility stuff. and remove DEFINE_ALLOC_WRAPPER from
  all sources.

* ext/openssl/ossl_x509ext.c (X509::Extension.new): new method.

* ext/openssl/ossl_x509ext.c (X509::Extension#oid=): new method.

* ext/openssl/ossl_x509ext.c (X509::Extension#value=): new method.

* ext/openssl/ossl_x509ext.c (X509::Extension#critical=): new method.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4522 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-06 08:56:09 +00:00
gotoyuzo
d9f38cbee8 * ext/openssl/lib/openssl/x509.rb: new method X509::Name::parse.
* ext/openssl/ossl_digest.c: add ossl_digest_new().

* ext/openssl/ossl_digest.h: ditto.

* ext/openssl/ossl_cipher.c: add ossl_cipher_new().

* ext/openssl/ossl_cipher.h: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4511 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-05 09:08:40 +00:00
nahi
0d1896a88f * MANIFEST: add and remove entries for the previous ext/openssl/sample move.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4495 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-04 10:59:15 +00:00
nahi
a6663a94e5 * ext/io/wait/.cvsignore: added.
* ext/openssl/.cvsignore: added.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4493 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-04 10:39:29 +00:00
nahi
5f84c80fc5 * sample/openssl: added. Sample of standard distribution library should be
locate in sample/{module_name}/*.

* ext/openssl/sample/*: removed.  move to sample/openssl/*.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4492 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-04 10:31:29 +00:00
shigek
98abf532a4 Bug fix: [ruby-dev:21314] [BigDecimal] [BUG] Segmentation fault
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4488 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-04 03:50:37 +00:00
why
4e0868d03f * ext/syck/token.c: headerless documents with root-level spacing now
honored.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4487 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-03 18:58:27 +00:00
shigek
da24c258c3 Bug in mult method fixed.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4483 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-03 10:47:44 +00:00
gotoyuzo
28e962d92c * ext/openssl/lib/net/protocols.rb (SSLIO#ssl_connect): warning
for skipping server verification.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4482 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-02 11:41:33 +00:00
matz
05bb6b505c * ext/socket/extconf.rb: check s6_addr8 in in6_addr (Tru64 UNIX).
the patch is submitted by nmu <nmu@users.sourceforge.jp>.

* ext/socket/getaddrinfo.c (getaddrinfo): should use in6_addr8 on
  some platforms.

* ext/socket/getnameinfo.c (getnameinfo): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4481 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-02 05:12:39 +00:00
nagai
9388ed284d * ext/tcltklib/tcltklib.c (ip_invoke): fixed bug on passing a exception
* ext/tk/lib/{tk.rb, tkcanvas.rb, tkfont.rb, tktext.rb} :
  bug fix and improvement of font control


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4480 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-02 05:04:30 +00:00
nobu
26fcfd1bb5 * ext/iconv/iconv.c (map_charset): use lower case keys.
* ext/iconv/iconv.c (iconv_fail): just yield error and return the
  result if a block is given.

* ext/iconv/iconv.c (iconv_convert): yield error and append the
  result if a block is given.

* ext/iconv/charset_alias.rb (charset_alias): optional third
  argument.

* ext/iconv/charset_alias.rb (charset_alias): use CP932 instead of
  SHIFT_JIS on cygwin.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4476 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-01 15:41:31 +00:00
matz
b6feeb2945 * parse.y (aref_args): forgot to call NEW_SPLAT(). reported by
Dave Butcher.

* eval.c (Init_Thread): protect thgroup_default.  suggested by Guy
  Decoux in [ruby-talk:80623]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4474 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-01 09:02:43 +00:00
shigek
da84ad63ee The 2nd arg for add,sub,mult, and div is 0, then result will be same as +,-,*,/ respectively.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4461 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-29 13:37:44 +00:00
shigek
8ab2410757 limit inserted.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4460 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-29 13:34:00 +00:00
shigek
38b9eb1674 mult & div instead of * & /.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4459 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-29 13:33:37 +00:00
nagai
24ff3f4448 * doc/ChangeLog-1.8.0: add changes of Ruby/Tk
* ext/tcltklib/tcltklib.c : some methods have no effect if on slave-IP
* ext/tcltklib/tcltklib.c : can create a interpreter without Tk
* ext/tcltklib/tcltklib.c : bug fix on handling exceptions
* ext/tcltklib/MANUAL.euc : modify
* ext/tk/lib/tk.rb : freeze some core modules
* ext/tk/lib/multi-tk.rb : more secure
* ext/tk/lib/tk.rb: TkVariable.new(array) --> treat the array as the
  Tk's list
* ext/tk/lib/tk.rb: improve accessibility of TkVariable object
* ext/tk/lib/tk.rb, ext/tk/lib/tkfont.rb, ext/tk/lib/tkcanvas.rb,
  ext/tk/lib/tktext.rb : fix bug of font handling
* ext/tk/lib/tkfont.rb TkFont.new() accepts compound fonts
* process.c: bug fix
* process.c: add rb_secure(2) to methods of Process::{UID,GID,Sys}
* process.c: deny handling IDs during evaluating the block given to
  the Process::{UID,GID}.switch method


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4456 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-29 08:34:14 +00:00
shigek
0ec8683145 Forgot to round '*'.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4450 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-27 13:29:23 +00:00
shigek
4b159597af sqrt() error checking bug fixed.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4445 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-26 13:22:32 +00:00
shigek
e0a51801f8 sqrt() speed up.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4444 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-26 12:48:13 +00:00
why
822a11d47e * implicit.c (syck_type_id_to_taguri): corrected detection of
x-private types.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4440 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-26 07:02:19 +00:00
nobu
5f5c0a0cf4 * ext/nkf/nkf.c (rb_nkf_putchar): should use rb_str_resize() to just
resize a string, rb_str_cat() disallows NULL.  [ruby-dev:21237]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4432 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-23 09:56:56 +00:00
why
7cca6c25f0 * ext/syck/rubyext.c: refactoring of the transfer method
dispatch.  added yaml_org_handler for faster dispatch of
  transfers to base types.

* lib/yaml/rubytypes.rb: removed handling of builtins from
  Ruby library.

* ext/syck/token.c: quoted and block scalars are now implicit !str

* ext/syck/implicit.c: empty string detected as !null.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4423 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-21 21:16:58 +00:00
shigek
39503e4d0f Int. overflow bug in multiplication fixed & VpNmlz() speed up.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4420 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-21 15:13:45 +00:00
nobu
b1f0115394 * ext/socket/socket.c (ruby_connect): many systems seem to have
a problem in select() after EINPROGRESS.  [ruby-list:38080]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4415 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-20 07:44:53 +00:00
why
360b0a015a * ext/syck/syck.h: Parser definition problems on HP-UX. [ruby-talk:79389]
* ext/syck/handler.c (syck_hdlr_get_anchor): Memory leak.

* ext/syck/syck.s (syck_io_file_read): Bad arguments to fread.

* ext/syck/rubyext.c: Tainting issues.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4414 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-19 16:38:02 +00:00
shigek
62acad914e to_s("+") implemented.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4412 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-19 14:21:13 +00:00
shigek
caf213d9ad E added. Typo corrected.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4411 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-19 14:16:09 +00:00
gotoyuzo
65652ecdb5 * lib/webrick/ssl.rb: new file; SSL/TLS enhancement for GenericServer.
* lib/webrick/https.rb: SSLSocket handling is moved to webrick/ssl.rb.

* lib/webrick/compat.rb (File::fnmatch): remove old migration code.

* lib/webrick/httpserver.rb (HTTPServer#run): ditto.

* lib/webrick/server.rb (GenericServer#listen): the body of this
  method is pull out as Utils::create_lisnteners.

* lib/webrick/utils.rb (Utils::create_lisnteners): new method.

* lib/webrick/server.rb (GenericServer#start): should not
  through unknown errors. and refine comments.

* ext/openssl/lib/openssl/ssl.rb (SSLServer#accept): should close
  socket if SSLSocket raises error.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4409 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-19 06:00:36 +00:00
gotoyuzo
ba64282cdc * ext/openssl/ossl_ssl.c: sync_close is moved to SSLSocket as
a builtin.

* ext/openssl/lib/openssl/buffering.rb (Buffering#close): ditto.

* ext/openssl/lib/openssl/buffering.rb (Buffering#puts): should
  add a return to the tails of each line.

* ext/openssl/lib/openssl/ssl.rb: new class OpenSSL::SSL::SSLServer.

* ext/openssl/lib/net/protocols.rb (SSLIO#ssl_connect): use sync_close.

* ext/openssl/sample/echo_svr.rb: use SSLServer.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4407 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-18 22:49:48 +00:00
nobu
d45bda0bf8 * ext/curses/curses.c (_XOPEN_SOURCE_EXTENDED): Mac OS X standard
headers are inconsistent at this macro.  [ruby-core:01432]

* ext/curses/extconf.rb: check if _XOPEN_SOURCE_EXTENDED breaks.

* ext/tcltklib/stubs.c: Status macro in X11/Xthreads.h bothers
  winspool.h

* instruby.rb: make list at first instead of iterator.
  [ruby-talk:79347]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4405 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-18 16:24:42 +00:00
nobu
c7b5c0489b * ext/openssl/extconf.rb (HAVE_VA_ARGS_MACRO): need to compile.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4402 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-17 14:40:00 +00:00
shigek
a8027639b8 Refinement for speedup.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4401 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-17 14:35:53 +00:00
gotoyuzo
39c4886fe7 * ext/openssl/lib/openssl/ssl.rb (SSLSocket#sync_close=): add a
method to specify if the underlying IO will be closed in
  SSLSocket#close.

* ext/openssl/lib/openssl/buffering.rb: add forwarders to
  setsockopt, getsockopt and fcntl.

* ext/openssl/lib/net/protocols.rb: enable sync for SSLSocket.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4400 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-17 08:22:45 +00:00
nobu
7d7f1ef157 * ext/extmk.rb (extmake): should not force to remake Makefile when
installation and so on.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4398 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-17 02:32:07 +00:00
nobu
8695612caf * marshal.c (w_symbol, w_object): get rid of warnings.
* re.c (rb_memsearch): ditto.

* time.c (time_dump): ditto.

* ext/extmk.rb (extmake): not continue making when extconf.rb
  failed.

* ext/openssl/extconf.rb: check __VA_ARGS__ macro more precisely.

* ext/openssl/ossl.h: remove version.h dependency.

* ext/openssl/ruby_missing.h: ditto.

* lib/mkmf.rb (pkg_config): use --libs output except with
  only-L for other options.  [ruby-list:38099]

* lib/mkmf.rb (create_makefile): separate rule for static
  library from shared object.

* win32/Makefile.sub, bcc32/Makefile.sub, wince/Makefile.sub:
  define exec_prefix and libdir.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4396 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-16 14:58:34 +00:00
shigek
32df87feab Typo 'selt' corrected to 'self'.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4395 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-16 13:36:40 +00:00