aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/inets/doc/src/notes.xml9
-rw-r--r--lib/inets/src/ftp/ftp.erl7
-rw-r--r--lib/inets/src/inets_app/inets.appup.src9
3 files changed, 17 insertions, 8 deletions
diff --git a/lib/inets/doc/src/notes.xml b/lib/inets/doc/src/notes.xml
index 1ae8e3c325..34f93586e1 100644
--- a/lib/inets/doc/src/notes.xml
+++ b/lib/inets/doc/src/notes.xml
@@ -33,7 +33,6 @@
</header>
<section><title>Inets 5.7.3</title>
-
<section><title>Improvements and New Features</title>
<p>-</p>
@@ -56,6 +55,14 @@
<list>
<item>
+ <p>[ftp] Fails to open IPv6 connection due to badly formatted
+ IPv6 address in EPRT command. The address part of the command
+ incorrectly contained decimal elements instead of hexadecimal. </p>
+ <p>Own Id: OTP-9827</p>
+ <p>Aux Id: Seq 11970 </p>
+ </item>
+
+ <item>
<p>[httpc] Bad Keep Alive Mode. When selecting a session,
the "state" of the session (specifically if the server has
responded) was not taken into account. </p>
diff --git a/lib/inets/src/ftp/ftp.erl b/lib/inets/src/ftp/ftp.erl
index ac72963347..3028cd800f 100644
--- a/lib/inets/src/ftp/ftp.erl
+++ b/lib/inets/src/ftp/ftp.erl
@@ -1912,17 +1912,14 @@ setup_ctrl_connection(Host, Port, Timeout, State) ->
setup_data_connection(#state{mode = active,
caller = Caller,
csock = CSock} = State) ->
- IntToString = fun(Element) -> integer_to_list(Element) end,
-
case (catch inet:sockname(CSock)) of
{ok, {{_, _, _, _, _, _, _, _} = IP, _}} ->
{ok, LSock} =
gen_tcp:listen(0, [{ip, IP}, {active, false},
inet6, binary, {packet, 0}]),
{ok, Port} = inet:port(LSock),
- Cmd = mk_cmd("EPRT |2|~s:~s:~s:~s:~s:~s:~s:~s|~s|",
- lists:map(IntToString,
- tuple_to_list(IP) ++ [Port])),
+ IpAddress = inet_parse:ntoa(IP),
+ Cmd = mk_cmd("EPRT |2|~s|~p|", [IpAddress, Port]),
send_ctrl_message(State, Cmd),
activate_ctrl_connection(State),
{noreply, State#state{caller = {setup_data_connection,
diff --git a/lib/inets/src/inets_app/inets.appup.src b/lib/inets/src/inets_app/inets.appup.src
index 0e5024abe2..f3228b9e82 100644
--- a/lib/inets/src/inets_app/inets.appup.src
+++ b/lib/inets/src/inets_app/inets.appup.src
@@ -20,6 +20,7 @@
[
{"5.7.2",
[
+ {load_module, ftp, soft_purge, soft_purge, []},
{update, httpc_handler, {advanced, upgrade_from_pre_4_7_3},
soft_purge, soft_purge, []},
{update, httpc_manager, {advanced, upgrade_from_pre_4_7_3},
@@ -28,6 +29,7 @@
},
{"5.7.1",
[
+ {load_module, ftp, soft_purge, soft_purge, []},
{load_module, http_uri, soft_purge, soft_purge, []},
{load_module, http_util, soft_purge, soft_purge, []},
{load_module, httpd_util, soft_purge, soft_purge, [http_util]},
@@ -43,6 +45,7 @@
},
{"5.7",
[
+ {load_module, ftp, soft_purge, soft_purge, []},
{load_module, http_uri, soft_purge, soft_purge, []},
{load_module, httpd_util, soft_purge, soft_purge, [http_util]},
{load_module, httpd_file, soft_purge, soft_purge, []},
@@ -56,11 +59,11 @@
{update, httpc_manager, {advanced, upgrade_from_pre_4_7_3},
soft_purge, soft_purge, [httpc_handler]}
]
- }
],
[
{"5.7.2",
[
+ {load_module, ftp, soft_purge, soft_purge, []},
{update, httpc_handler, {advanced, downgrade_to_pre_4_7_3},
soft_purge, soft_purge, []},
{update, httpc_manager, {advanced, downgrade_to_pre_4_7_3},
@@ -69,6 +72,7 @@
},
{"5.7.1",
[
+ {load_module, ftp, soft_purge, soft_purge, []},
{load_module, http_uri, soft_purge, soft_purge, []},
{load_module, http_util, soft_purge, soft_purge, []},
{load_module, httpd_util, soft_purge, soft_purge, [http_util]},
@@ -83,7 +87,8 @@
]
},
{"5.7",
- [
+ [
+ {load_module, ftp, soft_purge, soft_purge, []},
{load_module, http_uri, soft_purge, soft_purge, []},
{load_module, httpd_util, soft_purge, soft_purge, [http_util]},
{load_module, httpd_file, soft_purge, soft_purge, []},