Commit graph

577 commits

Author SHA1 Message Date
mame
606208becf * lib/net/smtp.rb (check_continue): raise an error with an explanatory
message.  [ruby-core:35854] [Feature #4598]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35464 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-24 12:55:13 +00:00
nobu
535a28c737 see OpenSSL::SSL
* lib/net/imap.rb (Net::IMAP): see if actually used SSL is defined to
  get rid of autoloaded OpenSSL.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35439 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-23 13:48:38 +00:00
nobu
cf6116150c autoload in module scope.
* lib/net/http.rb (Net::OpenSSL): get rid of autoload in global scope
  not to make tests confused.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35438 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-23 13:48:36 +00:00
nobu
7255d93b08 deal with timeout exceptions
* lib/net/http.rb (Net::HTTP#transport_request): deal with
  Net::OpenTimeout and Net::ReadTimeout first to get rid of loading
  OpenSSL as possible.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35437 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-23 13:48:31 +00:00
drbrain
ea9b6997cc * lib/net/protocol.rb (module Net): Added ReadTimeout to match
OpenTimeout.  ReadTimeout is now raised by rbuf_fill instead of
  Timeout::Error to help users distinguish what type of timeout
  occurred.  [ruby-trunk - Feature #6088]
* lib/net/pop.rb (module Net):  Updated documentation for ReadTimeout
  and OpenTimeout.
* lib/net/http.rb (module Net):  ditto
* lib/net/smtp.rb (module Net):  ditto
* lib/net/telnet.rb (module Net):  Net::ReadTimeout is now raised in
  waitfor to match Net::Protocol.
* test/net/http/test_http.rb:  Updated Timeout::Error expectation to
  Net::ReadTimeout.
* test/net/ftp/test_ftp.rb:  ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35304 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-11 21:20:51 +00:00
naruse
b386b25aac * lib/net/http.rb (Net::HTTP#send_request_with_body_stream):
use IO.copy_stream for requests using body_stream.
  patched by Eric Wong. [ruby-core:40898] [Feature #5605]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35281 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-10 09:23:11 +00:00
naruse
7865005fa1 * lib/ftp/ftp.rb (Net::FTP#close): restore original read_timeout.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35236 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-04 04:10:58 +00:00
naruse
096ffa2a63 * lib/ftp/ftp.rb (Net::FTP#close): ignore exceptions from shutdown and
read on closing.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35230 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-04 01:33:58 +00:00
naruse
bc2ece6cf8 * lib/ftp/ftp.rb (Net::FTP#close): close socket more gracefully.
* lib/ftp/ftp.rb (Net::BufferedSocket#shutdown): added.

* test/net/ftp/test_ftp.rb (FTPTest#create_ftp_server): wait socket
  with shutdown and read.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35227 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-03 19:24:30 +00:00
naruse
ae79409db4 * lib/net/ftp.rb (Net::BufferedSocket): should delegate send() to @io
for Net::FTP#abort and Net::FTP#status..

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35205 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-01 14:06:38 +00:00
shugo
d8438024a2 * lib/net/ftp.rb: fixed the domain name in examples.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35200 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-31 15:56:18 +00:00
shugo
5f81a53fd2 * lib/net/ftp.rb (read_timeout=, open_timeout=): supported timeout.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35194 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-31 04:44:36 +00:00
shugo
bb314d3347 * lib/net/ftp.rb (parse227, parse228, parse229): don't use $~.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35141 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-26 14:43:27 +00:00
shugo
d68b3a38e9 * lib/net/ftp.rb (parse227, parse228, parse229): don't use local
variables defined by named capture for other Ruby implementations
  such as Rubinius.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35140 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-26 14:39:21 +00:00
shugo
422c8baeb9 * lib/net/ftp.rb (parse_pasv_port): refactored.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35139 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-26 14:39:16 +00:00
shugo
8c89d8ef72 * lib/net/ftp.rb (parse227, parse228, parse229): refactored.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35137 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-26 10:52:04 +00:00
shugo
6853b44a92 * lib/net/imap.rb (initialize): raise Net::IMAP::Error when the
connection is closed without a greeting response.
  [ruby-core:40938] [Bug #5616]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35055 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-16 05:12:39 +00:00
shugo
ed07df5ab5 * lib/net/imap.rb (rfc822_text): ignore [] after RFC822.
[ruby-core:40945] [Bug #5620]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35054 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-16 04:56:18 +00:00
drbrain
09f27873ed * lib/net/protocol.rb: Add OpenTimeout subclass of Timeout::Error
* lib/net/pop.rb:  Modernize Timeout usage.  Patch by Eric Wong.
	  Use Net::OpenTimeout instead of Timeout::Error.  [Bug #5765]
	* lib/net/http.rb:  ditto
	* lib/net/smtp.rb:  ditto
	* lib/net/telnet.rb:  ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34843 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-28 05:15:54 +00:00
drbrain
8a7da58c0f * lib/net/http.rb: Retry HTTP requests for additional network errors.
Introduce OpenTimeout subclass of Timeout::Error.  [Bug #6001]
	* test/net/http/test_http.rb:  Reduce timeout to 0.01s for faster test
	* test/net/http/test_https.rb:  ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34842 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-28 04:51:37 +00:00
ayumin
e0f4a550e5 * lib/net/http.rb: Fix documentation.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34781 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-24 03:10:25 +00:00
drbrain
7a1180c745 * lib/net/http.rb (Net::HTTP#transport_request): Fix infinite loop
upon EOFError or Errno::ECONNRESET where count is reset to 0.
* test/net/http/test_http.rb (class TestNetHTTPKeepAlive):  Test for
  above.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34779 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-24 01:10:07 +00:00
shyouhei
5de2c3c2d3 Writing entire packet at once to avoid incomplete transmission
Signed-off-by: URABE, Shyouhei <shyouhei@ruby-lang.org>

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34362 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-01-23 12:25:19 +00:00
naruse
bee7ccddd2 * lib/net/http.rb (Net::HTTP#transport_request): retry a idempotent
request automatically. [ruby-dev:45030] [Bug #5790]
  [ruby-core:41821] [Bug #5813]

* lib/net/http.rb (Net::HTTP#keep_alive_timeout=): added to specify
  the second to reconnect the TCP connection on Keep-Alive.
  The default value is 2 second because current servers uses 2 sec.
  http://ftp-admin.blogspot.com/2009/09/keepalivetimeout2.html

* lib/net/http.rb (Net::HTTP#begin_transport): reconnect TCP
  connection on keep-alive timeout.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34341 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-01-20 05:56:35 +00:00
shugo
e48c8be89b * lib/net/imap.rb: includes the sequence number of UID in a error
message.  suggested by art lussos.
  [ruby-core:41413] [Feature #5692]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34010 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-11 03:21:43 +00:00
naruse
b361c5adec Fix typo in r33849.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33855 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-26 20:03:32 +00:00
naruse
b6b8cc01a5 * lib/net/http.rb (Net::HTTP::SSL_IVNAMES): rerefix 33701.
SSL_ATTRIBUTES stores names for set_params, they are symbol.
  SSL_IVNAMES stores instance variable names.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33853 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-26 19:59:11 +00:00
naruse
708d76a3b1 * lib/net/http.rb (Net::HTTP.get_response): enable use_ssl
if given URI object is https.
  patched by Mark Ferlatte [ruby-core:40665] [Bug #5545]

* lib/net/http.rb (Net::HTTP.post_form): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33849 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-26 11:44:45 +00:00
naruse
9d4db2d4d9 * lib/net/http.rb (Net::HTTP::SSL_ATTRIBUTES): refix 33701.
store instance variable symbol names.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33848 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-26 11:06:53 +00:00
drbrain
661a936e64 * lib/net/http.rb (Net::HTTP::SSL_ATTRIBUTES): Use symbol keys instead
of string keys to avoid duplicating parameters in
  OpenSSL::SSL:SSLContext#set_params.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33701 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-10 23:35:35 +00:00
ktsj
c3749b6a6d * ext/pathname/lib/pathname.rb, ext/tk/lib/multi-tk.rb,
ext/tk/sample/demos-en/widget, lib/benchmark.rb, lib/irb/cmd/fork.rb,
  lib/mkmf.rb, lib/net/ftp.rb, lib/net/smtp.rb, lib/open3.rb,
  lib/pstore.rb, lib/rexml/element.rb, lib/rexml/light/node.rb,
  lib/rinda/tuplespace.rb, lib/rss/maker/base.rb,
  lib/rss/maker/entry.rb, lib/scanf.rb, lib/set.rb, lib/shell.rb,
  lib/shell/command-processor.rb, lib/shell/process-controller.rb,
  lib/shell/system-command.rb, lib/uri/common.rb: remove unused block
  arguments to avoid creating Proc objects.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33638 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-05 07:37:47 +00:00
shugo
26f73a5117 * lib/net/imap.rb (default_port, default_imap_port,
default_tls_port, default_ssl_port, default_imaps_port):
  added methods for consistency with Net::POP.
  based on the patch by art lussos.  [ruby-core:38997] [Bug #5198]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33182 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-09-04 13:33:14 +00:00
drbrain
ca96541149 * ext/pathname/lib/pathname.rb: Fix typos and grammar mistakes. Patch
by Luke Gruber.  [#5203]
* ext/pty/lib/expect.rb:  ditto
* lib/mathn.rb:  ditto
* lib/net/http.rb:  ditto
* lib/open-uri.rb:  ditto
* lib/ostruct.rb:  ditto
* lib/tempfile.rb:  ditto
* lib/thread.rb:  ditto
* lib/weakref.rb:  ditto
* sample/webrick/httpproxy.rb:  ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33086 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-08-26 22:22:37 +00:00
shugo
2bd37c7183 * lib/net/imap.rb (idle): raises a Net::IMAP::Error when the
connection is closed.  based on the patch by Hugo Barauna.
  [Bug #5190] [ruby-core:38930]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33007 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-08-19 05:16:20 +00:00
shugo
28b5db007f * lib/net/imap.rb (msg_att): accepts extra space before ')'.
based on the patch by art lussos.  [Bug #5163] [ruby-core:38820]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33001 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-08-19 02:32:59 +00:00
akr
184f041fb8 * lib/net/pop.rb: fix typo in document.
* lib/net/http.rb: ditto.

* lib/net/imap.rb: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32905 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-08-10 12:28:19 +00:00
naruse
a967390d04 * lib/net/http.rb: come back autoload. OpenSSL constant is used
some places, so it leads mistakes like HTTP.start.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32899 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-08-09 17:56:40 +00:00
drbrain
a58c76cc20 * lib/net/http.rb: Net::HTTP#finish is used to manually close
connections.  [Ruby 1.9 - Bug #5045]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32614 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-22 04:58:10 +00:00
nahi
800c313bde * lib/net/http.rb (Net::HTTP.post_form): Do not ignore query part of
the given URI to post. See #655.

* test/net/http/test_http.rb, test/net/http/utils.rb: Test it.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32192 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-21 17:44:44 +00:00
drbrain
dbf9baeddf * lib/timeout.rb: Clarify timeout duration types. Patch by Alf Mikula.
[Ruby 1.9 - Bug #4791]
	* lib/net/http.rb: ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32116 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-16 05:24:12 +00:00
shugo
97ac172d58 * lib/net/imap.rb (search_response): parses SEARCH responses from
the Yahoo IMAP server correctly.  patched by Mark Nadig.  [Bug #4509]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32114 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-16 02:41:03 +00:00
naruse
2ba3909c0a Additional fix for r31933.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32054 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-13 10:21:07 +00:00
naruse
df36601017 * lib/net/http.rb (Net::HTTP#use_ssl?): require 'openssl' only when
https is needed. fixes r31933.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32049 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-13 08:03:22 +00:00
naruse
80651edad2 * lib/net/http.rb: don't use autoload.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31933 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-06 01:53:41 +00:00
nahi
b219a56c07 * lib/net/http.rb, lib/net/protocol.rb: Allow to configure to wait
server returning '100 continue' response befor sending HTTP request
  body. See NEWS for more detail. See #3622.
  Original patch is made by Eric Hodel <drbrain@segment7.net>.

* test/net/http/test_http.rb: test it.

* NEWS: Add new feature.

On my env (Ubuntu 11.04 64bit),
9510 tests, 2203824 assertions, 0 failures, 0 errors, 29 skips
->
9514 tests, 2203836 assertions, 0 failures, 0 errors, 29 skips


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31860 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-31 08:10:42 +00:00
drbrain
0441079b58 * lib/net/pop.rb: Hide implementation details from RDoc.
[Ruby 1.9 - Bug #4711]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31728 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-25 00:30:04 +00:00
drbrain
9c711c0be6 * lib/net/ftp.rb: Add :nodoc: for private methods.
[Ruby 1.9 - Bug #4710]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31727 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-25 00:26:51 +00:00
drbrain
1cb6879c82 * lib/net/smtp.rb: Document Net::SMTP::Response. Patch by J.R. Garcia.
[Ruby 1.9 - Bug #4768]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31710 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-23 00:21:10 +00:00
nobu
d371e3583e * lib: revert r31635-r31638 and untabify with expand(1).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31641 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-19 00:07:25 +00:00
drbrain
b205e55953 * lib/benchmark.rb: Fix indentation.
* lib/net/imap.rb:  Fix indentation of regular expressions.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31638 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-18 22:07:09 +00:00