naruse
16225d823d
include query parameters in Net::HTTP.post
...
patched by Samuel Giddins <segiddins@segiddins.me>
https://github.com/ruby/ruby/pull/1686 fix GH-1686
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59923 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-15 16:53:55 +00:00
naruse
67723c1e46
Net::HTTP#start now pass :ENV to p_addr by default [Bug #13351 ]
...
To avoid this, pass nil explicitly.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58798 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-05-19 15:13:42 +00:00
naruse
c7ec1b1f59
Allow Net::HTTP to fetch user/pass from http_proxy
...
Note that this feature is enabled only on environment variables are
multi-user safe. In this time the list includes Linux, FreeBSD, or
Darwin. [Bug #12921 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58461 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-23 16:19:23 +00:00
normal
f845a9ef76
lib/*: remove closed checks
...
Follow r56795. Since Ruby 2.2, calling #close on a closed
socket no longer raises exceptions.
* lib/cgi/session.rb (update): remove closed? check
* lib/net/http.rb (finish, transport_request): ditto
* lib/net/imap.rb (disconnect): ditto
* lib/net/pop.rb (do_start, do_finish): ditto
* lib/net/smtp.rb (do_start, do_finish): ditto
* lib/open3.rb (popen_run, pipeline_run): ditto
* lib/pstore.rb (transaction): ditto
* lib/shell/process-controller.rb (sfork):
* lib/tempfile (_close, call, Tempfile.create): ditto
* lib/webrick/httpauth/htdigest.rb (flush): ditto
* lib/webrick/httpauth/htpasswd.rb (flush): ditto
* lib/webrick/server.rb (start_thread, cleanup_shutdown_pipe): ditto
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56865 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-11-21 23:05:41 +00:00
rhe
4081b34d4c
net/http: avoid writing/reading from unstarted SSL socket
...
When net/http connects to an HTTPS server through a CONNECT proxy, it
writes the CONNECT request to an unconnected OpenSSL::SSL::SSLSocket.
OpenSSL::SSL::SSLSocket traditionally fallbacks to a method call on the
underlying IO object if a read/write method is called before the TLS
connection is established. So it automagically works correctly, emitting
the "SSL session is not started yet" warning.
This is not obvious at first glance. The warning is also noisy. Let's
just write to the plain socket instead of relying on the SSLSocket's
behavior.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56857 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-11-21 05:02:58 +00:00
nobu
dad2382270
net/protocol.rb: kwargs
...
* lib/net/protocol.rb (Net::BufferedIO#initialize): add keyword
arguments for initial attributes.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56779 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-11-14 07:53:32 +00:00
shugo
88243c5303
* lib/net/http.rb (Net::HTTP.post): new convenience method to send a POST request.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56597 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-11-05 14:39:06 +00:00
naruse
8ec6fcb2f6
* lib/net/http.rb (transport_request): other than HTTPContinue
...
in 1xx (HTTPInformation) also needs to continue. [Bug #12890 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56596 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-11-05 14:08:16 +00:00
shugo
73b3b10d8d
* lib/net/smtp.rb (tlsconnect): support timeout for TLS handshake.
...
[ruby-core:76893] [Bug #12678 ]
* lib/net/protocol.rb (ssl_socket_connect): new method to implement
timeout for TLS handshake.
* lib/net/http.rb (connect): use Net::Protocol#ssl_socket_connect.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56576 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-11-05 06:47:36 +00:00
nobu
5026a663ab
Cache no proxy case
...
* lib/net/http.rb (Net::HTTP#proxy_uri): cache the case no proxy
is used.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55520 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-06-28 06:20:20 +00:00
nobu
8ff99deda9
Use conditional operator
...
* lib/net/http.rb (Net::HTTP#proxy): use conditional operator to
get rid of confusing ruby-mode.el.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55519 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-06-28 06:19:58 +00:00
hsbt
44dc0f32d3
* lib/net/http.rb: Improve documentation for SSL requests via GET method.
...
[fix GH-1325][ci skip] Patch by @jsyeo
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54670 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-22 02:27:10 +00:00
normal
778bbac8ac
stdlib: avoid extra calls to eliminate "\n" from Base64
...
We may use the '0' (zero) to avoid adding the line feed.
Furthermore, the '*' (asterisk) modifier is not needed for
a single-element arrays.
* ext/psych/lib/psych/visitors/yaml_tree.rb (visit_String):
eliminate chomp
* lib/net/http.rb (connect): eliminate delete
* lib/net/http/header.rb (basic_encode): ditto
* lib/net/imap.rb (authenticate): eliminate gsub
(self.encode_utf7): shorten delete arg
* lib/net/smtp.rb (base64_encode): eliminate gsub
* lib/open-uri.rb (OpenURI.open_http): eliminate delete
* lib/rss/rss.rb: ditto
* lib/securerandom.rb (base64): ditto
(urlsafe_base64): eliminate delete!
* lib/webrick/httpauth/digestauth.rb (split_param_value):
eliminate chop
* lib/webrick/httpproxy.rb (do_CONNECT): eliminate delete
(setup_upstream_proxy_authentication): ditto
[ruby-core:72666] [Feature #11938 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53488 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-10 00:35:43 +00:00
hsbt
95aadb1426
* lib/net/http/responses.rb: Added new response class for 451 status code.
...
* lib/net/http.rb: documentation for HTTPUnavailableForLegalReasons
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53387 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-30 11:53:15 +00:00
a_matsuda
3a05da1321
[DOC] Fix typos
...
* benchmark.rb
* getoptlong.rb
* irb.rb
* net/http.rb
* net/http/header.rb
* net/imap.rb
* optparse.rb
* pstore.rb
* webrick.rb
* xmlrpc.rb
[ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53261 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-23 03:43:23 +00:00
normal
268da52347
lib/net/http.rb (open_timeout): update default value in RDoc [ci skip]
...
[ruby-core:72413]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53226 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-21 01:24:12 +00:00
naruse
3e92b635fb
Add frozen_string_literal: false for all files
...
When you change this to true, you may need to add more tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53141 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-16 05:07:31 +00:00
hsbt
059c9c1cf3
* ext/socket/lib/socket.rb: use safe navigation operator.
...
[fix GH-1142] Patch by @mlarraz
* lib/drb/extservm.rb: ditto.
* lib/net/http.rb: ditto.
* lib/net/http/response.rb: ditto.
* lib/scanf.rb: ditto.
* lib/uri/generic.rb: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53111 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-14 08:05:35 +00:00
naruse
dab944e319
fixup! * lib/net/http.rb (connect): detect closed connection and reconnect If the server closes a keep-alive http connection, the client socket reaches EOF. To avoid an EOFError, detect the closed connection and reconnect. Added test to ensure HTTP#post succeeds even if the keep-alive-connection has been closed by the server. by Kristian Hanekamp <kris.hanekamp@gmail.com> https://github.com/ruby/ruby/pull/1089 fix GH-1089
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52766 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-11-27 15:03:24 +00:00
naruse
d249be6233
* lib/net/http.rb (connect): detect closed connection and reconnect
...
If the server closes a keep-alive http connection, the client socket
reaches EOF. To avoid an EOFError, detect the closed connection and
reconnect.
Added test to ensure HTTP#post succeeds even if the
keep-alive-connection has been closed by the server.
by Kristian Hanekamp <kris.hanekamp@gmail.com>
https://github.com/ruby/ruby/pull/1089 fix GH-1089
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52764 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-11-27 14:07:35 +00:00
hsbt
f0002bd5a2
* lib/net/http.rb: Fixed regression for Net::HTTP::PUT with "Expect-100"
...
header.
* test/net/http/test_http.rb: added test.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52683 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-11-20 05:57:10 +00:00
hsbt
2c97d69052
* lib/net/http.rb: set hostname before call ossl_ssl_set_session.
...
[Bug #11401 ][ruby-core:70152][fix GH-964] Patch by @mkarnebeek
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52682 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-11-20 05:40:04 +00:00
naruse
52e1c3b0ab
* lib/net/http.rb (Net::HTTP#initialize):
...
default value of Net::HTTP#open_timeout is now 60 (was nil).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52480 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-11-07 16:48:49 +00:00
hsbt
08b54fbd0d
* lib/net/http.rb: removed unused variable. It's removed at r13648.
...
[fix GH-1022] Patch by @nkondratyev
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51934 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-09-25 01:07:30 +00:00
naruse
bab5bf0c79
* lib/net/http.rb (Net::HTTP#connect): use connect_nonblock and
...
io/wait. fix GH-899
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50907 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-06-15 02:11:20 +00:00
normal
16aeffefa2
lib/*: use monotonic clock for timeouts
...
The monotonic clock is preferred as it is guaranteed to be
continuous and not subject to jumps due to adjustments.
* lib/net/resolv.rb (request): use monotonic clock
* lib/net/http.rb (begin_transport, end_transport): ditto
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50664 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-05-29 01:40:26 +00:00
naruse
58835a94ef
* lib/net/http.rb (edit_path): use path which is absolute ftp url
...
on using ftp_proxy.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50157 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-04-03 23:18:20 +00:00
ayumin
1711e80cf1
Revert r49118 [Feature #10652 ]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49124 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-01-03 11:36:35 +00:00
ayumin
68f7424bde
* lib/net/http.rb (proxy_user): retrieve proxy user from http_proxy.
...
* lib/net/http.rb (proxy_pass): retrieve proxy password from http_proxy.
Patch by Rafael dos Santos Silva. [fix GH-763]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49118 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-01-03 07:21:56 +00:00
hsbt
a84bfcbf00
* lib/net/http.rb: More descriptive error message when net/http fails
...
to connect to a server. Patch by @xaviershay [fix GH-700]
* test/net/http/test_http.rb: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49113 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-01-03 01:38:59 +00:00
hsbt
2743ad8c25
* lib/net/http.rb (Net::HTTP#send_request): there is no response body
...
with HEAD request. Patch by @rodrigosaito [fix GH-520]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49105 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-01-02 12:07:04 +00:00
naruse
c7855be25c
use clock_gettime to avoid object creation
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48582 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-26 08:22:35 +00:00
drbrain
711ece42cd
* lib/net/http.rb: Do not attempt SSL session resumption when the
...
session is expired. [Bug #10533 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48563 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-25 07:09:48 +00:00
naruse
f01485b4ec
* lib/net/http.rb (Net::HTTP.proxy_uri): use initializer instead
...
of parser to handle IPv6 address. [Bug #9129 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47079 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-08-05 19:37:37 +00:00
naruse
c165203564
* lib/net/http/generic_request.rb
...
(Net::HTTP::GenericRequest#update_uri):
handle scheme, host, and port to reflect connection to @uri.
* lib/net/http.rb (Net::HTTP#begin_transport): move trivial handling
to Net::HTTP::GenericRequest#update_uri.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47076 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-08-05 19:10:05 +00:00
naruse
88df8816f1
change default not tot create useless object
...
initheader = initheader ? initheader.dup : {}
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46678 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-07-03 17:59:49 +00:00
hsbt
690be750cb
* lib/cgi/html.rb: fix typo by @windwiny [fix GH-506]
...
* lib/net/http.rb: ditto
* lib/rexml/attribute.rb: ditto
* lib/rexml/element.rb: ditto
* lib/rexml/source.rb: ditto
* lib/rexml/streamlistener.rb: ditto
* lib/rss/xmlparser.rb: ditto
* lib/rubygems/commands/generate_index_command.rb: ditto
* lib/shell.rb: ditto
* lib/uri/common.rb:ditto
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44650 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-01-19 05:43:26 +00:00
naruse
91539d71d8
* lib/net/http/responses.rb:
...
Add `HTTPIMUsed`, as it is also supported by rack/rails.
RFC - http://tools.ietf.org/html/rfc3229
by Vipul A M <vipulnsward@gmail.com>
https://github.com/ruby/ruby/pull/447 fix GH-447
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44079 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-12-08 17:11:46 +00:00
naruse
044e75db6d
fix r42168; Add class name to constants
...
[ruby-core:56158] [Feature #8681 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42169 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-25 09:33:12 +00:00
naruse
67d05682b0
* lib/net/http.rb (Net::HTTP#connect): disable Nagle's algorithm on
...
HTTP connection. [ruby-core:56158] [Feature #8681 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42168 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-25 08:54:32 +00:00
zzak
c366a99cc5
* lib/cgi.rb: [DOC] Capitalize "Ruby" in documentation [Fixes GH-341]
...
Patch by Dave Worth https://github.com/ruby/ruby/pull/341
* lib/webrick.rb: ditto
* lib/scanf.rb: ditto
* lib/xmlrpc/config.rb: ditto
* lib/resolv.rb: ditto
* lib/e2mmap.rb: ditto
* lib/fileutils.rb: ditto
* lib/mkmf.rb: ditto
* lib/cgi/session.rb: ditto
* lib/yaml.rb: ditto
* lib/erb.rb: ditto
* lib/irb.rb: ditto
* lib/tracer.rb: ditto
* lib/net/http.rb: ditto
* ext/syslog/lib/syslog/logger.rb: ditto
* sample/pty/expect_sample.rb: ditto
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42045 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-18 13:50:32 +00:00
hsbt
fa7e514642
Fixing example in comments that raised an error by @JackDanger [fix GH-345]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41766 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-04 02:53:16 +00:00
hsbt
c25aa9f5d6
Document the default Net timeout values by @toolmantim [GH fixes #269 ]
...
* lib/net/{ftp,http,pop,smtp}.rb: added documentation for default values.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40014 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-31 01:47:47 +00:00
drbrain
023561f704
* lib/net/http.rb: Removed duplicate Accept-Encoding in Net::HTTP#get.
...
[ruby-trunk - Bug #7924 ]
* test/net/http/test_http.rb: Test for the above.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39463 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-24 06:15:05 +00:00
drbrain
64db9dcbd5
* lib/net/http.rb: Removed OpenSSL dependency from Net::HTTP.
...
* test/net/http/test_http.rb: Remove Zlib dependency from tests.
* test/net/http/test_http_request.rb: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39238 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-14 05:32:58 +00:00
drbrain
f58d398075
* lib/net/http: Do not handle Content-Encoding when the user sets
...
Accept-Encoding. This allows users to handle Content-Encoding for
themselves. This restores backwards-compatibility with Ruby 1.x.
* lib/net/http/generic_request.rb: ditto.
* lib/net/http/response.rb: ditto
* test/net/http/test_http.rb: Test for the above.
* test/net/http/test_http_request.rb: ditto.
* test/net/http/test_httpresponse.rb: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39232 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-14 01:08:19 +00:00
zzak
45bcf5d46f
* lib/net/http.rb (HTTP.post_form): Fix module scope in documentation
...
Patch by David Albert [Bug #7794 ] [ruby-core:51955]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39141 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-07 22:35:25 +00:00
drbrain
570b766901
* lib/net/http.rb: Requests may be created with a URI which sets the
...
Host header. Responses contain the requested URI for easier redirect
following. [ruby-trunk - Feature #6482 ]
* lib/net/http/generic_request.rb: ditto.
* lib/net/http/response.rb: ditto.j
* NEWS (net/http): Updated for above.
* test/net/http/test_http.rb: Tests for above.
* test/net/http/test_http.rb: ditto.
* test/net/http/test_httpresponse.rb: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38546 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-21 20:36:07 +00:00
naruse
51ee08fd71
Suppress warning: uninitialized variable [ruby-core:50470] [Bug #7494 ]
...
Conditional operator is required to return true or false.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38172 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04 01:01:37 +00:00
zzak
421d4f628b
* lib/net/http.rb: Net::HTTP::Patch to list of HTTP Request Classes
...
Patch by Ryunosuke SATO [Fixes #217 on github]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38036 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-30 05:45:23 +00:00