Age | Commit message (Collapse) | Author |
|
httpc should fill SNI extenstion for HTTPS requests sent through
CONNECT tunnel to provide proper access to websites using SNI
|
|
Without this fix, httpc:request/1 crashes the httpc_handler when an
invalid chunked length header is encountered (since 77acb47):
=ERROR REPORT==== 14-Nov-2015::17:19:30 ===
** Generic server <0.651.0> terminating
** Last message in was {tcp,#Port<0.5714>,
<<"HTTP/1.1 200 ok\r\nTransfer-Encoding:chunked\r\n\r\nåäö\r\n">>}
** When Server state == {state,
[...]
** Reason for termination ==
** {bad_return_value,{error,{chunk_size,"åäö"}}}
|
|
httpc should work properly if streaming option {self, once} is
chosen and the corresponding response does not get streamed.
|
|
httpc_handler should respond with correct and complete
responses seeing non-streamed status codes i.e. codes
other than 200 or 206.
|
|
httpc should return meaningful error reason disregarding whether
it is being used with http proxy or not
|
|
httpc_handler should react properly to cancel requests even
when the request to be cancelled was already finished
but httpc_manager did not get notified about that yet
|
|
|
|
If the socket is closed by the peer do not try to close it again.
Solves OTP-11845
|
|
httpc_handler should set correct address of the connected host
and not ignore proxy option of the profile while
sending requests taken out of keep-alive queue
|
|
httpc_handler should respond with proper {stop, Reason, State}
message when sending request from keep-alive queue fails
|
|
* erlang/pr/741:
Minor misprints
|
|
|
|
The new module is backwards compatible.
|
|
httpc_handler should be stopped when sending requests returns error
because of a closed connection and `tcp_closed` message could not be
catched (see http://erlang.org/pipermail/erlang-bugs/2007-May/000346.html )
otherwise it will lead to process leak.
|
|
* scrapinghub/update_session_original_stacktrace:
inets: Return correct stacktrace on session updating failure
|
|
Debug output in httpc_handler:update_session/4 error
handling code should not pollute stack trace returned in process exit.
|
|
|
|
|
|
* scrapinghub/stream_body_with_no_content_length:
inets: Fix HTTP 1.0 body end on closed connection
|
|
* scrapinghub/stream_for_chunked_single_message:
inets: Fix streaming with single chunk body
|
|
Receiving HTTP response with no Content-length header and
with body ending on closed connection should give the complete
response body contents up to the last byte received.
|
|
Receiving HTTP response with chunked transfer encoding in a single
TCP message should produce stream messages for response body when
streaming mode is used for httpc.
|
|
* nox/httpc-transfer-encoding-identity:
Support identity transfer-encoding in httpc
OTP-11802
|
|
* ia/inets/revert/OTP-11756:
inets: Continue CTify test suite
inets: Enable https tests
inets: Make test suites independent of each other
inets: Reverted commmit f97cd6965ac35d1cbe510de23592956857d144c8
|
|
* scrapinghub/update_session_error_logging_fix:
inets: Fix incorrect argument order
OTP-11794
|
|
The reverted commit took a too optimistic approch to pipeling. When added
we thought it would be an improvment, but it proved to be a
misconception.
|
|
> The default (identity) encoding; the use of no transformation whatsoever.
> The Internet Assigned Numbers Authority (IANA) acts as a registry for
> transfer-coding value tokens. Initially, the registry contains the
> following tokens: "chunked" (section 3.6.1), "identity" (section 3.6.2),
> "gzip" (section 3.5), "compress" (section 3.5), and "deflate" (section 3.5).
Reported-by: Andrew Houghton
|
|
Wrong order of arguments in httpc_handler:update_session/4 error
handling code should not result in bad_argument error making
stack trace unusable.
|
|
The types array(), dict(), digraph(), gb_set(), gb_tree(), queue(),
set(), and tid() have been deprecated. They will be removed in OTP 18.0.
Instead the types array:array(), dict:dict(), digraph:graph(),
gb_set:set(), gb_tree:tree(), queue:queue(), sets:set(), and ets:tid()
can be used. (Note: it has always been necessary to use ets:tid().)
It is allowed in OTP 17.0 to locally re-define the types array(), dict(),
and so on.
New types array:array/1, dict:dict/2, gb_sets:set/1, gb_trees:tree/2,
queue:queue/1, and sets:set/1 have been added.
|
|
|
|
|
|
|
|
http_chunk:decode/4, the side-effecting chunk decoder, was only used
by httpc_handler:handle_http_body/2 but now it's completely unused.
|
|
Previously the only difference between {stream, self} and {stream,
{self, once}} was an extra Pid in the stream_start message due to a
bug in httpc_handler. It was immediately sending a bunch of messages
till the end instead of waiting for httpc:stream_next/1 being called.
|
|
|
|
httpc: CTfy test suite
httpd: Simplify ssl configuration OTP-10846
|
|
OTP-10845
|
|
|
|
Introduces new option htts_proxy so that it is possible
to have different proxies for http and https. The new option
defaults to the old proxy option.
Implements HTTP-1.1 extension method CONNECT to establish SSL/TLS tunnel
We choose not to implement "TLS upgrade" as defined by RFC 2817 as
this method of upgrade is vulnerable to man in the middle attacks,
can be easily broken by proxies and does not seem to be widely adopted.
|
|
* ta/docsmaint:
Fix various doc typos for R15B02
Fix various code typos for R15B02
OTP-10245
|
|
|
|
A failure to update the session database will now result
in an informative error message and a controlled (handler)
exit rather then an ugly crash.
Also debug functions to retrieve sessions info and
updated the info function with more info (sessions and
options).
OTP-10093
|
|
|
|
|
|
Merge from R14B integration branch (for inets-5.7.3) and
fixed appup and corresponding code-change code to work
in new version (inets-5.8.1).
Also some minor (R15B specific) test suite fixes.
Merge branch 'bmk/inets/inets573_integration' into bmk/inets/inets581_integration/r15
Conflicts:
lib/inets/doc/src/notes.xml
lib/inets/src/http_client/httpc_internal.hrl
lib/inets/src/inets_app/inets.appup.src
lib/inets/vsn.mk
|
|
bmk/inets/inets573_integration
Conflicts:
lib/inets/doc/src/notes.xml
lib/inets/src/inets_app/inets.appup.src
|
|
The client incorrectly streams 404 responses. The documentation
specifies that only 200 and 206 responses shall be streamed.
OTP-9860
|
|
Added proper code to handle code upgrade/downgrade.
The manager and handler(s) are interdependant which
makes it a bit tricky.
OTP-9847
|
|
Add a test case verifying the session selection.
Add some more use of the update_session function. Improved
verbosity printouts.
OTP-9847
|
|
When selecting a session, the "state" of the session (specifically if
the server has responded) was not taken into account. Attempting to
fix this, a "state" field (actually available) has been added to the
session record.
OTP-9847
|