ruby/ext
akr c4049f4cb6 * io.c (rb_mWaitReadable): defined.
(rb_mWaitWritable): defined.
  (io_getpartial): extend IO::WaitReadable on EWOULDBLOCK and EAGAIN.
  (rb_io_write_nonblock): extend IO::WaitWritable on EWOULDBLOCK and
  EAGAIN.

* error.c (make_errno_exc): extracted from rb_sys_fail.
  (rb_mod_sys_fail): new function.

* include/ruby/ruby.h (rb_mod_sys_fail): declared.
  (rb_mWaitReadable): declared.
  (rb_mWaitWritable): declared.

* ext/socket/init.c (rsock_s_recvfrom_nonblock): extend
  IO::WaitReadable on EWOULDBLOCK and EAGAIN.
  (rsock_s_accept_nonblock): extend IO::WaitReadable on EWOULDBLOCK,
  EAGAIN, ECONNABORTED and EPROTO.

* ext/socket/socket.c (sock_connect_nonblock): extend IO::WaitWritable
  on EINPROGRESS.

* ext/socket/ancdata.c (bsock_sendmsg_internal): extend
  IO::WaitWritable on EWOULDBLOCK and EAGAIN.
  (bsock_recvmsg_internal): extend IO::WaitReadable on EWOULDBLOCK and
  EAGAIN.

* ext/openssl/ossl_ssl.c (ossl_ssl_read_internal): raise SSLError
  extended by IO::WaitReadable/IO::WaitWritable on
  SSL_ERROR_WANT_READ/SSL_ERROR_WANT_WRITE.

* ext/openssl/ossl.c (ossl_make_error): extracted from ossl_raise.
  (ossl_exc_new): new function.

* ext/openssl/ossl.h (ossl_exc_new): declared.

* lib/net/protocol.rb (rbuf_fill): rescue IO::WaitReadable and
  IO::WaitWritable.

  [ruby-core:22539], [ruby-dev:38140] 



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23006 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-19 11:40:38 +00:00
..
bigdecimal * {ext,lib,test}/**/*.rb: removed trailing spaces. 2009-03-06 03:56:38 +00:00
continuation * cont.c (ruby_Init_{Continuation_body,Fiber_as_Coroutine}): prefixed 2009-01-20 07:17:28 +00:00
coverage * ext/coverage/coverage.c (rb_mCoverage): removed unneeded static variable. 2008-08-31 04:48:02 +00:00
curses * {ext,lib,test}/**/*.rb: removed trailing spaces. 2009-03-06 03:56:38 +00:00
dbm * ext/dbm/dbm.c (fdbm_index): make #index warn like Hash. 2008-11-07 22:07:05 +00:00
digest * {ext,lib,test}/**/*.rb: removed trailing spaces. 2009-03-06 03:56:38 +00:00
dl * win32/Makefile.sub (config.h): added RUBY_COREDLL. 2009-03-17 04:48:03 +00:00
etc * ext/etc/etc.c (etc_each_group): defines only when Etc::Group is 2009-02-19 06:14:27 +00:00
fcntl add extconf.h to .cvsignore. 2006-06-24 01:15:08 +00:00
fiber * cont.c (ruby_Init_{Continuation_body,Fiber_as_Coroutine}): prefixed 2009-01-20 07:17:28 +00:00
gdbm * ext/gdbm/gdbm.c (rb_gdbm_fetch): remove needless cast. 2009-01-05 06:53:42 +00:00
iconv * ext/iconv/iconv.c (strip_glibc_option, map_charset): check if 2008-10-21 02:34:07 +00:00
io/wait * ext/io/wait/wait.c (io_nread): returns number of bytes available 2008-12-29 09:07:20 +00:00
json * {ext,lib,test}/**/*.rb: removed trailing spaces. 2009-03-06 03:56:38 +00:00
mathn * complex.c (nucomp_canonicalization): renamed. 2008-12-12 23:40:55 +00:00
nkf * {ext,lib,test}/**/*.rb: removed trailing spaces. 2009-03-06 03:56:38 +00:00
openssl * io.c (rb_mWaitReadable): defined. 2009-03-19 11:40:38 +00:00
pty * {ext,lib,test}/**/*.rb: removed trailing spaces. 2009-03-06 03:56:38 +00:00
racc/cparse * include/ruby: moved public headers. 2007-06-10 03:06:15 +00:00
readline * ext/readline/readline.c (Init_readline): entry may be NULL. 2009-02-04 22:42:06 +00:00
ripper * {ext,lib,test}/**/*.rb: removed trailing spaces. 2009-03-06 03:56:38 +00:00
sdbm * ext/gdbm/gdbm.c (fgdbm_index): make #index warn like Hash. 2008-11-08 03:15:28 +00:00
socket * io.c (rb_mWaitReadable): defined. 2009-03-19 11:40:38 +00:00
stringio * ext/stringio/stringio.c (strio_ungetc): calculates new position 2009-02-12 08:17:53 +00:00
strscan * ext/strscan/strscan.c (strscan_do_scan): fix usecnt decrement. 2008-08-31 02:43:17 +00:00
syck * ext/syck/rubyext.c (rb_syck_mktime): return DateTime for a value 2008-11-19 08:49:51 +00:00
syslog * test/test_syslog.rb: moved. 2009-03-06 04:04:56 +00:00
tk * ext/tk/tcltklib.c (eventloop_sleep, lib_eventloop_core), 2009-03-16 07:37:24 +00:00
win32ole * {ext,lib,test}/**/*.rb: removed trailing spaces. 2009-03-06 03:56:38 +00:00
zlib * ext/zlib/zlib.c (zstream_run): suppress a warning. a patch from 2009-03-01 10:39:01 +00:00
.cvsignore * configure.in: modify program_prefix only if specified 2002-09-08 09:08:15 +00:00
.document * ext/socket/mkconstants.rb: generate rb_define_const directly for 2009-02-16 16:55:33 +00:00
Setup * sprintf.c (rb_str_format): allow %c to print one character 2006-06-09 21:20:17 +00:00
Setup.atheos * ext/Setup*: remove tcltklib. 2005-01-26 05:15:02 +00:00
Setup.emx * ext/Setup*: remove tcltklib. 2005-01-26 05:15:02 +00:00
Setup.nt * ext/Setup*: remove tcltklib. 2005-01-26 05:15:02 +00:00
extmk.rb * ext/extmk.rb (extmake): removes object files no longer used and 2009-03-03 08:10:10 +00:00
purelib.rb * ext/purelib.rb: get rid of recent feature. [ruby-dev:34864] 2008-05-28 09:10:50 +00:00