LogoopenSUSE Build Service > Projects
Sign Up | Log In

View File 0559-inets-Ignore-bracket-option-in-format_address.patch of Package erlang (Project home:Ledest:erlang:20)

From 2be9b5dc9b443efb495742b27823ae9cad40214f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?P=C3=A9ter=20Dimitrov?= <peterdmv@erlang.org>
Date: Thu, 31 Jan 2019 18:01:35 +0100
Subject: [PATCH] inets: Ignore bracket option in format_address

Ignore the option 'ipv6_host_with_brackets' when formatting
addresses to be used in lower level functions.

Change-Id: I3b7b276b37fe129ade9208519bff226e17ae7c57
---
 lib/inets/src/http_client/httpc_handler.erl | 12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)

diff --git a/lib/inets/src/http_client/httpc_handler.erl b/lib/inets/src/http_client/httpc_handler.erl
index 8b356d8026..8d443a1477 100644
--- a/lib/inets/src/http_client/httpc_handler.erl
+++ b/lib/inets/src/http_client/httpc_handler.erl
@@ -805,12 +805,11 @@ handle_unix_socket_options(#request{unix_socket = UnixSocket},
             error({badarg, [{ipfamily, Else}, {unix_socket, UnixSocket}]})
     end.
 
-connect_and_send_first_request(Address, #request{ipv6_host_with_brackets = HasBrackets} = Request, 
-                               #state{options = Options0} = State) ->
+connect_and_send_first_request(Address, Request, #state{options = Options0} = State) ->
     SocketType  = socket_type(Request),
     ConnTimeout = (Request#request.settings)#http_options.connect_timeout,
     Options = handle_unix_socket_options(Request, Options0),
-    case connect(SocketType, format_address(Address, HasBrackets), Options, ConnTimeout) of
+    case connect(SocketType, format_address(Address), Options, ConnTimeout) of
         {ok, Socket} ->
             ClientClose =
 		httpc_request:is_client_closing(
@@ -1739,9 +1738,8 @@ update_session(ProfileName, #session{id = SessionId} = Session, Pos, Value) ->
                      {stacktrace, Stacktrace}]}}
     end.
 
-
-format_address({Host, Port}, true) when is_list(Host)->
-    {ok, Address} = inet:parse_address(string:strip(string:strip(Host, right, $]), left, $[)),
+format_address({[$[|T], Port}) ->
+    {ok, Address} = inet:parse_address(string:strip(T, right, $])),
     {Address, Port};
-format_address(HostPort, _) ->
+format_address(HostPort) ->
     HostPort.
-- 
2.16.4