From eebfa937b9c08a25b195909581274c7753bc77ef Mon Sep 17 00:00:00 2001 From: Ingela Anderton Andin Date: Tue, 17 Jul 2018 11:54:43 +0200 Subject: inets: Improve error handling --- lib/inets/src/http_server/httpd_file.erl | 3 +++ lib/inets/test/httpd_SUITE.erl | 15 +++++++++++++-- 2 files changed, 16 insertions(+), 2 deletions(-) (limited to 'lib') diff --git a/lib/inets/src/http_server/httpd_file.erl b/lib/inets/src/http_server/httpd_file.erl index 4d419172d0..fb71834e95 100644 --- a/lib/inets/src/http_server/httpd_file.erl +++ b/lib/inets/src/http_server/httpd_file.erl @@ -33,6 +33,9 @@ handle_error(enoent, Op, ModData, Path) -> handle_error(enotdir, Op, ModData, Path) -> handle_error(404, Op, ModData, Path, ": A component of the file name is not a directory"); +handle_error(eisdir, Op, ModData, Path) -> + handle_error(403, Op, ModData, Path, + ":Ilegal operation expected a file not a directory"); handle_error(emfile, Op, _ModData, Path) -> handle_error(500, Op, none, Path, ": Too many open files"); handle_error({enfile,_}, Op, _ModData, Path) -> diff --git a/lib/inets/test/httpd_SUITE.erl b/lib/inets/test/httpd_SUITE.erl index 9a85c51d24..6981dc901a 100644 --- a/lib/inets/test/httpd_SUITE.erl +++ b/lib/inets/test/httpd_SUITE.erl @@ -438,11 +438,22 @@ get(Config) when is_list(Config) -> proplists:get_value(node, Config), http_request("GET /index.html ", Version, Host), [{statuscode, 200}, + {header, "Content-Type", "text/html"}, + {header, "Date"}, + {header, "Server"}, + {version, Version}]), + + ok = httpd_test_lib:verify_request(proplists:get_value(type, Config), Host, + proplists:get_value(port, Config), + transport_opts(Type, Config), + proplists:get_value(node, Config), + http_request("GET /open/ ", Version, Host), + [{statuscode, 403}, {header, "Content-Type", "text/html"}, {header, "Date"}, {header, "Server"}, {version, Version}]). - + basic_auth_1_1(Config) when is_list(Config) -> basic_auth([{http_version, "HTTP/1.1"} | Config]). @@ -1930,7 +1941,7 @@ head_status(_) -> basic_conf() -> [{modules, [mod_alias, mod_range, mod_responsecontrol, - mod_trace, mod_esi, mod_cgi, mod_dir, mod_get, mod_head]}]. + mod_trace, mod_esi, mod_cgi, mod_get, mod_head]}]. auth_access_conf() -> [{modules, [mod_alias, mod_htaccess, mod_dir, mod_get, mod_head]}, -- cgit v1.2.3 From e3e6085d1896b27a4a416f1afa0bb8f090edcc49 Mon Sep 17 00:00:00 2001 From: Ingela Anderton Andin Date: Tue, 17 Jul 2018 13:52:53 +0200 Subject: inets: Prepare for release --- lib/inets/vsn.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'lib') diff --git a/lib/inets/vsn.mk b/lib/inets/vsn.mk index 1b21956a62..cf4a27147d 100644 --- a/lib/inets/vsn.mk +++ b/lib/inets/vsn.mk @@ -19,6 +19,6 @@ # %CopyrightEnd% APPLICATION = inets -INETS_VSN = 6.5.2.1 +INETS_VSN = 6.5.2.2 PRE_VSN = APP_VSN = "$(APPLICATION)-$(INETS_VSN)$(PRE_VSN)" -- cgit v1.2.3 From dcd0547dd2e1a78f89dced3ca5918ae539b11de3 Mon Sep 17 00:00:00 2001 From: Ingela Anderton Andin Date: Tue, 17 Jul 2018 14:23:47 +0200 Subject: ssl: Engine key trumps certfile option --- lib/ssl/src/ssl_config.erl | 6 +++--- lib/ssl/test/ssl_engine_SUITE.erl | 15 +++++++++++++++ 2 files changed, 18 insertions(+), 3 deletions(-) (limited to 'lib') diff --git a/lib/ssl/src/ssl_config.erl b/lib/ssl/src/ssl_config.erl index 022fb7eac0..81b18c15af 100644 --- a/lib/ssl/src/ssl_config.erl +++ b/lib/ssl/src/ssl_config.erl @@ -91,9 +91,9 @@ init_certificates(undefined, #{pem_cache := PemCache} = Config, CertFile, server end; init_certificates(Cert, Config, _, _) -> {ok, Config#{own_certificate => Cert}}. -init_private_key(_, #{algorithm := Alg} = Key, <<>>, _Password, _Client) when Alg == ecdsa; - Alg == rsa; - Alg == dss -> +init_private_key(_, #{algorithm := Alg} = Key, _, _Password, _Client) when Alg == ecdsa; + Alg == rsa; + Alg == dss -> case maps:is_key(engine, Key) andalso maps:is_key(key_id, Key) of true -> Key; diff --git a/lib/ssl/test/ssl_engine_SUITE.erl b/lib/ssl/test/ssl_engine_SUITE.erl index 71891356e8..8025e4e0ed 100644 --- a/lib/ssl/test/ssl_engine_SUITE.erl +++ b/lib/ssl/test/ssl_engine_SUITE.erl @@ -117,8 +117,23 @@ private_key(Config) when is_list(Config) -> EngineServerConf = [{key, #{algorithm => rsa, engine => Engine, key_id => ServerKey}} | proplists:delete(key, ServerConf)], + + EngineFileClientConf = [{key, #{algorithm => rsa, + engine => Engine, + key_id => ClientKey}} | + proplists:delete(keyfile, FileClientConf)], + + EngineFileServerConf = [{key, #{algorithm => rsa, + engine => Engine, + key_id => ServerKey}} | + proplists:delete(keyfile, FileServerConf)], + %% Test with engine test_tls_connection(EngineServerConf, EngineClientConf, Config), + + %% Test with engine and present file arugments + test_tls_connection(EngineFileServerConf, EngineFileClientConf, Config), + %% Test that sofware fallback is available test_tls_connection(ServerConf, [{reuse_sessions, false} |ClientConf], Config). -- cgit v1.2.3 From 7507f47dc14093443fb8446b969f73d276339413 Mon Sep 17 00:00:00 2001 From: Erlang/OTP Date: Fri, 20 Jul 2018 14:10:09 +0200 Subject: Prepare release --- lib/ic/doc/src/notes.xml | 23 ++++++++++++++++++++++- lib/ic/vsn.mk | 2 +- lib/inets/doc/src/notes.xml | 18 +++++++++++++++++- lib/kernel/doc/src/notes.xml | 16 ++++++++++++++++ lib/kernel/vsn.mk | 2 +- lib/ssl/doc/src/notes.xml | 29 +++++++++++++++++++++++++++++ 6 files changed, 86 insertions(+), 4 deletions(-) (limited to 'lib') diff --git a/lib/ic/doc/src/notes.xml b/lib/ic/doc/src/notes.xml index 13d11527ab..217f7ab740 100644 --- a/lib/ic/doc/src/notes.xml +++ b/lib/ic/doc/src/notes.xml @@ -31,7 +31,28 @@ notes.xml -
IC 4.4.4.1 +
IC 4.4.4.2 + +
Fixed Bugs and Malfunctions + + +

+ Fixed potential buffer overflow bugs in + oe_ei_encode_long/ulong/longlong/ulonglong functions on + 64-bit architectures. These functions expect 32 bit + integers as the IDL type "long" is defined as 32 bits. + But there is nothing preventing user code from "breaking" + the interface and pass larger values on 64-bit + architectures where the C type "long" is 64 bits.

+

+ Own Id: OTP-15179 Aux Id: ERIERL-208

+
+
+
+ +
+ +
IC 4.4.4.1
Fixed Bugs and Malfunctions diff --git a/lib/ic/vsn.mk b/lib/ic/vsn.mk index f087df5e95..8ef497ee92 100644 --- a/lib/ic/vsn.mk +++ b/lib/ic/vsn.mk @@ -1 +1 @@ -IC_VSN = 4.4.4.1 +IC_VSN = 4.4.4.2 diff --git a/lib/inets/doc/src/notes.xml b/lib/inets/doc/src/notes.xml index b9b0ee17dd..41cebab34f 100644 --- a/lib/inets/doc/src/notes.xml +++ b/lib/inets/doc/src/notes.xml @@ -33,7 +33,23 @@ notes.xml -
Inets 6.5.2.1 +
Inets 6.5.2.2 + +
Fixed Bugs and Malfunctions + + +

+ Enhance error handling, that is mod_get will return 403 + if a path is a directory and not a file.

+

+ Own Id: OTP-15192

+
+
+
+ +
+ +
Inets 6.5.2.1
Improvements and New Features diff --git a/lib/kernel/doc/src/notes.xml b/lib/kernel/doc/src/notes.xml index f7d2c93666..1b7f11d4fa 100644 --- a/lib/kernel/doc/src/notes.xml +++ b/lib/kernel/doc/src/notes.xml @@ -31,6 +31,22 @@

This document describes the changes made to the Kernel application.

+
Kernel 5.4.3.2 + +
Fixed Bugs and Malfunctions + + +

+ Non semantic change in dist_util.erl to silence dialyzer + warning.

+

+ Own Id: OTP-15170

+
+
+
+ +
+
Kernel 5.4.3.1
Fixed Bugs and Malfunctions diff --git a/lib/kernel/vsn.mk b/lib/kernel/vsn.mk index 7f2041ef55..d00032f89c 100644 --- a/lib/kernel/vsn.mk +++ b/lib/kernel/vsn.mk @@ -1 +1 @@ -KERNEL_VSN = 5.4.3.1 +KERNEL_VSN = 5.4.3.2 diff --git a/lib/ssl/doc/src/notes.xml b/lib/ssl/doc/src/notes.xml index 34fe352d08..e04b33edb9 100644 --- a/lib/ssl/doc/src/notes.xml +++ b/lib/ssl/doc/src/notes.xml @@ -27,6 +27,35 @@

This document describes the changes made to the SSL application.

+
SSL 8.2.6.1 + +
Fixed Bugs and Malfunctions + + +

+ Improve cipher suite handling correcting ECC and TLS-1.2 + requierments. Backport of solution for ERL-641

+

+ Own Id: OTP-15178

+
+
+
+ + +
Improvements and New Features + + +

+ Option keyfile defaults to certfile and should be trumped + with key. This failed for engine keys.

+

+ Own Id: OTP-15193

+
+
+
+ +
+
SSL 8.2.6
Fixed Bugs and Malfunctions -- cgit v1.2.3