Age | Commit message (Collapse) | Author |
|
* scrapinghub/http_uri_scheme_validation:
inets: scheme validation fun for http_uri
OTP-13071
|
|
http_uri:parse_scheme function should allow checking
scheme of URIs otherwise it could be easily abused to
reach limit number of atoms in the VM
|
|
httpc should not fail when response contains (now deprecated)
multiline HTTP headers constructed with obs-folds. And as
RFC7230 specifies user agent should replace obs-folds with
spaces.
|
|
This enables the user to provide default HTTP header values for headers
that should always be sent. Note that these values
may override built in defaults.
|
|
* ia/pr/800/OTP-12984:
inets: Forward connection errors with https proxy
|
|
On Linux systems a socket may be opened pre starting Erlang and
then passed to Erlangs ftpd or httpd daemon. This is useful as the wrap program
can open a privileged port and Erlang does not have to be run as root.
The test program will only open a random port, but it exercises the code
so that the feature will remain intact.
|
|
Also remove all form of io:formats that can easily be achieved
by tracing.
|
|
httpc should return meaningful error reason disregarding whether
it is being used with http proxy or not
|
|
|
|
* scrapinghub/asn1_for_http_proxy_suite:
inets: add asn1 to httpc proxy suite
|
|
* ia/inets/name-spaces/OTP-12674:
inets: Modernize code
inets: Add profile option
|
|
httpc_proxy_SUITE should have asn1 properly started to be invokable standaone
|
|
|
|
To enable the HTTP server to run in a virtualized environment,
where there can be more that one server that has the same
bind_address and port, we add a new option profile.
The profile name will be used in concatenation with bind_address and port
to identify the HTTP server instance.
The name profile was chosen as there is a similar concept in the HTTP client
where profile names can be used to instantiate client configurations.
|
|
|
|
Conflicts:
OTP_VERSION
lib/inets/test/httpd_SUITE.erl
lib/inets/vsn.mk
lib/ssh/src/ssh.erl
lib/ssh/vsn.mk
lib/ssl/src/ssl.appup.src
lib/ssl/vsn.mk
|
|
Many HTTP headers are optional, and it could be desirable for the
server to filter and maybe even alter them without replacing the
mod_* modules that generate/process them. Add new behaviour
httpd_custom_api with default implementation in httpd_custom.erl.
Add behaviour module in 18 as then we can specify optional callbacks.
|
|
* zandra/mime-types-config/OTP-12731:
make it possible to use a file to configure mime types
|
|
The documentation specifies that a file can be used to configure
mime types, but currently it isn't working. With this change it
works as documented.
|
|
SSI is an old technique implemented by mod_include, that was badly
tested and not recommended to use, as having the server parse HTML
pages is a double edged sword! It can be costly for a heavily loaded
server to perform parsing of HTML pages while sending
them. Furthermore, it can be considered a security risk to have
average users executing commands in the name of the Erlang node user.
|
|
The new module is backwards compatible.
|
|
* rickard/time_api/OTP-11997: (22 commits)
Update primary bootstrap
inets: Suppress deprecated warning on erlang:now/0
inets: Cleanup of multiple copies of functions Add inets_lib with common functions used by multiple modules
inets: Update comments
Suppress deprecated warning on erlang:now/0
Use new time API and be back-compatible in inets Remove unused functions and removed redundant test
asn1 test SUITE: Eliminate use of now/0
Disable deprecated warning on erlang:now/0 in diameter_lib
Use new time API and be back-compatible in ssh
Replace all calls to now/0 in CT with new time API functions
test_server: Replace usage of erlang:now() with usage of new API
Replace usage of erlang:now() with usage of new API
Replace usage of erlang:now() with usage of new API
Replace usage of erlang:now() with usage of new API
Replace usage of erlang:now() with usage of new API
otp_SUITE: Warn for calls to erlang:now/0
Replace usage of erlang:now() with usage of new API
Multiple timer wheels
Erlang based BIF timer implementation for scalability
Implement ethread events with timeout
...
Conflicts:
bootstrap/bin/start.boot
bootstrap/bin/start_clean.boot
bootstrap/lib/compiler/ebin/beam_asm.beam
bootstrap/lib/compiler/ebin/compile.beam
bootstrap/lib/kernel/ebin/auth.beam
bootstrap/lib/kernel/ebin/dist_util.beam
bootstrap/lib/kernel/ebin/global.beam
bootstrap/lib/kernel/ebin/hipe_unified_loader.beam
bootstrap/lib/kernel/ebin/inet_db.beam
bootstrap/lib/kernel/ebin/inet_dns.beam
bootstrap/lib/kernel/ebin/inet_res.beam
bootstrap/lib/kernel/ebin/os.beam
bootstrap/lib/kernel/ebin/pg2.beam
bootstrap/lib/stdlib/ebin/dets.beam
bootstrap/lib/stdlib/ebin/dets_utils.beam
bootstrap/lib/stdlib/ebin/erl_tar.beam
bootstrap/lib/stdlib/ebin/escript.beam
bootstrap/lib/stdlib/ebin/file_sorter.beam
bootstrap/lib/stdlib/ebin/otp_internal.beam
bootstrap/lib/stdlib/ebin/qlc.beam
bootstrap/lib/stdlib/ebin/random.beam
bootstrap/lib/stdlib/ebin/supervisor.beam
bootstrap/lib/stdlib/ebin/timer.beam
erts/aclocal.m4
erts/emulator/beam/bif.c
erts/emulator/beam/erl_bif_info.c
erts/emulator/beam/erl_db_hash.c
erts/emulator/beam/erl_init.c
erts/emulator/beam/erl_process.h
erts/emulator/beam/erl_thr_progress.c
erts/emulator/beam/utils.c
erts/emulator/sys/unix/sys.c
erts/preloaded/ebin/erlang.beam
erts/preloaded/ebin/erts_internal.beam
erts/preloaded/ebin/init.beam
erts/preloaded/src/erts_internal.erl
lib/common_test/test/ct_hooks_SUITE_data/cth/tests/empty_cth.erl
lib/diameter/src/base/diameter_lib.erl
lib/kernel/src/os.erl
lib/ssh/test/ssh_basic_SUITE.erl
system/doc/efficiency_guide/advanced.xml
|
|
Add inets_lib with common functions used by multiple
modules
|
|
|
|
|
|
Remove unused functions and removed redundant test
|
|
|
|
* scrapinghub/httpc_set_cookie_with_empty_values:
inets: parse correctly 'Set-Cookie' header with empty value
OTP-12455
|
|
Conflicts:
OTP_VERSION
erts/emulator/sys/unix/sys.c
erts/vsn.mk
|
|
|
|
httpc_cookie should parse cookies with empty values
and no attributes set in the 'Set-Cookie' headers.
|
|
Gracefully handle invalid content-lenght headers instead of
crashing in list_to_integer.
|
|
|
|
Parsing invalid 'Set-Cookie' header would make httpc crash.
This commit filters invalid 'Set-Cookie' headers so that httpc wouldn't try to parse them.
|
|
|
|
This fixes a bug in httpc where redirection URIs could lead to bad requests if they
contained fragments.
|
|
* lemenkov/use_os_getenv_2:
fix missing include
Start using os:getenv/2 fun
Introduce os:getenv/2
|
|
See #535
Signed-off-by: Peter Lemenkov <[email protected]>
|
|
|
|
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/stream_body_with_no_content_length:
inets: Fix HTTP 1.0 body end on closed connection
|
|
* ia/ssl/improved-options-handling/OTP-11950:
ssl: Correct test SUITE
ssl: Add format_status function to ssl connection process
inets: Correct httpc_SUITE
ssl: Add ssl options to listen options tracker
ssl: Move init
|
|
Conflicts:
OTP_VERSION
lib/ssh/test/ssh_basic_SUITE.erl
lib/ssh/vsn.mk
|
|
* ia/inets/maint-17/string-lengths/OTP-11925:
inets: httpd - Behave well on not so long but wrong request lines
inets: httpc - update test suite framwork to adopt to change in httpd
inets: httpd - Reject incorrect large request lines early
|
|
config_reload tests are not enough to test httpd "block/unblock"
used by config_reload, so renable some test cases in the old_httpd_SUITE
after making them work with the new code. Should be cleaned up and moved
to httpd_SUITE.
|
|
|
|
|