Commit graph

558 commits

Author SHA1 Message Date
shugo
4676ede3d1 * lib/net/imap.rb (resp_text_code): accepts response codes without
text.  [ruby-core:24194]
* lib/net/imap.rb (idle, idle_done): new methods for the IMAP4 IDLE
  command (RFC 2177).  Thanks, Eric Hodel.
* lib/net/imap.rb (format_date, format_datetime): new method to
  format IMAP-style date/datetime. Thanks, Eric Hodel.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24259 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-23 15:20:47 +00:00
shugo
00f5982e97 * lib/net/imap.rb: added response to Net::IMAP::ResponseError.
a patch from Eric Hodel in [ruby-core:24111].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23934 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-02 02:19:37 +00:00
nobu
63118829d9 * lib/net/protocol.rb (Net::BufferedIO#rbuf_fill): TimeoutError is
obsolete, use Timeout::Error instead.  [ruby-core:23821]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23674 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-06-12 21:50:35 +00:00
matz
0fa6bb37c6 * lib/net/smtp.rb (Net::SMTP#check_auth_args): should not change
number of methods for the sake of compatibility.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23387 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-10 23:56:22 +00:00
matz
587082d57c * lib/net/http.rb: documentation typo fixed. [ruby-core:23335]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23311 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-04-30 09:19:42 +00:00
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
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
akr
8746e342bc * lib/net/http.rb: suppress warnings of non-existing instance variable
access for SSL.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22673 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-28 07:19:55 +00:00
akr
e14c9923b4 * ext/openssl: avoid cyclic require.
* ext/openssl/lib/openssl/ssl-internal.rb: renamed from ssl.rb

* ext/openssl/lib/openssl/x509-internal.rb: renamed from x509.rb.

* lib/net/imap.rb: require openssl, instead of openssl/ssl.

* lib/net/pop.rb: require openssl, instead of openssl/ssl.

[ruby-dev:38018]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22378 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-17 16:09:44 +00:00
knu
df0f575e1d Fix grammos regarding the verb "refer".
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22196 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-10 08:55:40 +00:00
kazu
22f6e2e771 fixed typo
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22008 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-03 07:30:52 +00:00
shugo
3f59f0e06c * lib/net/imap.rb: validate data before sending to a server.
[ruby-core:20320]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21998 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-03 05:14:26 +00:00
shugo
bb9435a75c * lib/net/imap.rb (hmac_md5): should use String#ord to get ascii
code from the one-character string.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21996 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-03 03:12:30 +00:00
matz
d5bc38fdbf * lib/net/protocol.rb (Net::BufferedIO#rbuf_fill): avoid calling
read_nonblock in rescue.  use retry instead.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20955 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-23 15:24:54 +00:00
matz
85bae86cb6 * lib/optparse/version.rb: remove variable shadowing to stop
warning.   [ruby-core:20612]

* lib/irb/completion.rb, lib/net/imap.rb, lib/prime.rb,
  lib/rinda/ring.rb, lib/racc/parser.rb,
  lib/shell/command-processor.rb, lib/yaml/yamlnode.rb: ditto.

* lib/racc/parser.rb: remove space before parentheses.

* lib/shell/command-processor.rb, lib/shell/process-controller.rb:
  use parentheses around arguments.

* lib/irb/ext/change-ws.rb, lib/rexml/validation/relaxng.rb,
  lib/yaml/baseemitter.rb: indentation fix.

* lib/matrix.rb: small cosmetic change.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20859 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-18 07:54:50 +00:00
matz
348d715eaa * lib/net/protocol.rb (Net::BufferedIO#rbuf_fill): use
read_nonblock instead of sysread wrapped by timeout to boost
  performance.  a patch from Aaron Patterson in [ruby-core:20191].
  fix #806

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20443 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-02 06:34:19 +00:00
matz
e606e7e32b * lib/net/ftp.rb (Net::FTP#open_socket): SOCKSsocket is obsolete.
a patch from Alan Johnson <alan.wayne.johnson at gmail.com> in
  [ruby-core:19982].

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20249 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-18 12:29:25 +00:00
kazu
0e0d05d5f4 * lib/net/pop.rb: check for invalid APOP timestamp. (CVE-2007-1558)
[ruby-dev:36631]

* test/net/pop/test_pop.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19776 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-14 02:22:46 +00:00
naruse
a65d2e0574 * lib/net/http.rb (Net::HTTP#urlencode): str[0] returns char in 1.9.
Patch by Junegunn Choi [ruby-core:18368]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18805 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-24 03:21:36 +00:00
kazu
2d302dfd40 * lib/webrick/server.rb (WEBrick::GenericServer#shutdown):
rescue Errno::ENOTCONN and close. [ruby-dev:35896]

* test/openssl/test_ssl.rb (OpenSSL#start_server): ditto.
  [ruby-dev:35897]

* lib/net/imap.rb (Net::IMAP#disconnect): ditto. [ruby-dev:35898]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18777 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-22 11:12:06 +00:00
aamine
47c8401c5a * lib/net/pop.rb: POP3Command should export @socket since POP calls #socket.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18523 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-12 07:09:08 +00:00
aamine
00b129c4e4 * lib/net/http.rb (send_request_with_body): Content-Length should be byte length of string. (closes #203)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18518 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-12 06:32:50 +00:00
aamine
ae04e36638 * lib/net/https.rb: supress syntax warning.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18512 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-12 05:20:09 +00:00
aamine
08795f9ceb * lib/net/http.rb (Net::HTTP#initialize): initialize net/https variables to supress syntax warning.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18511 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-12 05:18:22 +00:00
shugo
16a24188cd * lib/net/ftp.rb (login): raise FTPReplyError if passwd or acct
is not supplied.  fixed [ruby-core:18058].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18416 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-07 11:55:13 +00:00
shugo
1498b668d2 * lib/net/ftp.rb (chdir): handle 5xx errors correctly.
fixed [ruby-core:18057].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18370 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-05 07:42:45 +00:00
shugo
49f7b3e8d1 * lib/net/imap.rb (disconnect): do not refer SSL::SSLSocket for
environments without OpenSSL. fixed [ruby-dev:35755].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18367 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-05 07:24:48 +00:00
shyouhei
76ef6fa16b * lib/net/smtp.rb (Net::SMTP::rcptto): fix a typo. a patch from
Masao Takaku <masao at nii.ac.jp>
	  fix [ruby-dev:35489].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18351 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-04 05:46:53 +00:00
nobu
62dc500faf * lib/net/ftp.rb (Net::FTP#sendport): use divmod. [ruby-core:17557]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17868 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-04 05:17:25 +00:00
matz
3819f8d156 * lib/net/smtp.rb (Net::SMTP::start): use 'localhost' instead of
'localhost.localdomain'.  [ruby-dev:35333]

* lib/net/smtp.rb (Net::SMTP::SMTP.start): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17840 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-03 03:54:25 +00:00
kazu
2bcb0a1a35 * lib/net/pop.rb (Net::POP3#set_all_uids): speed
up. a patch from <m-sumi AT techfirm.co.jp> [ruby-list:45047]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17429 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-19 11:42:05 +00:00
jeg2
b2c5258b85 * lib/net/telnet.rb: Fixing Telnet#wairfor() which was broken by changes to
the Kernel::Integer() method.  [ruby-core:17272]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17387 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-17 14:04:48 +00:00
matz
e6c1752137 * lib/rdoc.rb: massive spelling correction patch from Evan Farrar
<evanfarrar at gmail.com> in [ruby-doc:1382] applied.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16810 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-04 09:37:38 +00:00
shugo
79fdbe0519 * lib/net/imap.rb: do not use Thread#raise. [ruby-dev:34739]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16512 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-21 17:47:33 +00:00
jeg2
582983c224 * lib/net/telnet.rb: This patch from Brian Candler adds a FailEOF mode which
can be activated to have net/telnet raise EOFError exceptions when the 
  remote connection is closed.  The default behavior remains unchanged though.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16257 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-01 14:57:40 +00:00
jeg2
e1bc480e98 * lib/net/telnet.rb: Fixing a bug where line endings would not be properly
escaped when the two character ending was broken up into separate TCP
  packets.  Issue reported and patched by Brian Candler.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16241 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-30 11:14:52 +00:00
kazu
8cb17727c4 * lib/net/http.rb, lib/net/smtp.rb, lib/net/pop.rb: update URLs of Japanese documents.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16033 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-15 08:12:30 +00:00
matz
3d09c87ab5 * lib/net/pop.rb (Net::POP3::do_finish): clear @n_mails and
@n_bytes as well.  [ruby-core:16144]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15901 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-03 20:59:51 +00:00
naruse
40d8d38909 * ext/json/lib/json/pure/generator.rb,
ext/json/lib/json/pure/parser.rb, ext/openssl/lib/openssl/x509.rb,
ext/win32ole/sample/olegen.rb, lib/date/format.rb, lib/irb/context.rb,
lib/irb/workspace.rb, lib/net/http.rb, lib/net/imap.rb,
lib/rdoc/generator.rb, lib/rdoc/markup/to_html.rb,
lib/rdoc/markup/to_latex.rb, lib/rdoc/parsers/parse_c.rb,
lib/rdoc/ri/formatter.rb, lib/rexml/parsers/baseparser.rb,
lib/rexml/quickpath.rb, lib/rexml/text.rb, lib/rss/parser.rb,
lib/uri/common.rb, lib/uri/generic.rb, lib/webrick/httpresponse.rb,
lib/webrick/httpservlet/filehandler.rb, lib/yaml/baseemitter.rb,
lib/yaml/encoding.rb: performance tuning arround String#gsub.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15442 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-12 06:18:06 +00:00
drbrain
2b402d8243 Fix uninitialized variable warning in Net::HTTP
Remove unused method in IRB::OutputMethod.

[ruby-talk:284582]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14634 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-24 20:47:11 +00:00
gotoyuzo
40aa32a0d7 * ext/openssl/lib/net/ssl.rb (OpenSSL::SSL::SSLContext.build): removed.
* ext/openssl/lib/net/ssl.rb (OpenSSL::SSL::SSLContext#set_params):
  new method to set suitable SSL parameters.

* lib/net/pop.rb, lib/net/http.rb, lib/net/imap.rb, 
  test/openssl/test_ssl.rb: follow above change.

* test/net/http/test_https.rb: refine error case.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14479 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-22 08:31:53 +00:00
shugo
e875cfa1fe * lib/net/imap.rb (encode_utf7): accept UTF-8 strings.
* lib/net/imap.rb (decode_utf7): return UTF-8 strings.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14477 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-22 08:00:04 +00:00
shugo
3ee72c86ef * lib/net/imap.rb: fixed RDoc markups.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14476 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-22 07:29:01 +00:00
shugo
482690cdf8 * lib/net/imap.rb (initialize): fixed documentation.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14468 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-22 06:05:14 +00:00
shugo
a7ef0c7303 * lib/net/pop.rb (enable_ssl): use OpenSSL::SSL::SSLContext.build
instead of SSLContext.new (default verify mode is now
  OpenSSL::SSL::VERIFY_PEER).


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14467 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-22 06:03:20 +00:00
shugo
ad89f7e6d2 * lib/net/imap.rb (initialize): accept service name. changed
the defalut value of the old style +verify+ argument to true.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14408 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-21 06:34:03 +00:00
akr
4cf437519f * regerror.c, string.c, io.c, lib/getoptlong.rb, lib/net/imap.rb,
compile.c, sprintf.c, parse.y, ext/win32ole/win32ole.c,
  ext/tk/sample/demos-en/entry3.rb, ext/tk/lib/tcltk.rb,
  ext/openssl/ossl_bn.c, numeric.c, vm.c,
  benchmark/bm_so_meteor_contest.rb, bignum.c, ruby.c: don't "illegal"
  for non law violation context.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14377 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-21 02:31:11 +00:00
gotoyuzo
c6920177f3 * lib/net/http.rb (Net::HTTP#connect): use
OpenSSL::SSL::SSLContext.build instead of SSLContext.new (default
  verify mode is now OpenSSL::SSL::VERIFY_PEER).

* lib/net/https.rb: SSL parameters are defined by attr_accessor.

* test/net/http/test_https.rb: add test for HTTPS features.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14371 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-20 16:21:22 +00:00
ko1
5c04ed459b * lib/net/imap.rb (initialize): the second argument is an option
hash now.  use SSLContext.build to specify SSL parameters.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14368 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-20 10:41:50 +00:00
matz
ff7f462bf4 * lib/net/http.rb (Net::HTTP::get): now supports gzip
content-encoding.  a patch from Hugh Sasse <hgs AT dmu.ac.uk>.
  [ruby-core:13451]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14187 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-10 16:53:52 +00:00