aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPaweł Chmielowski <pawel@process-one.net>2022-05-06 10:14:50 +0200
committerPaweł Chmielowski <pawel@process-one.net>2022-05-06 10:14:50 +0200
commitc7ab3274c5ce2e4e95843d6a258cdbf3a835180a (patch)
treebf49d6a9f572cb40a3ae0a6a2fd5033527849fac /src
parentHave consistent schema type in misc:uri_parse (diff)
Return userinfo from misc:uri_parse
Diffstat (limited to 'src')
-rw-r--r--src/ejabberd_config_transformer.erl2
-rw-r--r--src/misc.erl10
-rw-r--r--src/mod_http_upload.erl2
-rw-r--r--src/mod_sip.erl2
4 files changed, 8 insertions, 8 deletions
diff --git a/src/ejabberd_config_transformer.erl b/src/ejabberd_config_transformer.erl
index b24d0edd0..7a1a03506 100644
--- a/src/ejabberd_config_transformer.erl
+++ b/src/ejabberd_config_transformer.erl
@@ -103,7 +103,7 @@ transform(_Host, acme, ACME, Acc) ->
ACME1 = lists:map(
fun({ca_url, URL} = Opt) ->
case misc:uri_parse(URL) of
- {ok, _, "acme-v01.api.letsencrypt.org", _, _, _} ->
+ {ok, _, _, "acme-v01.api.letsencrypt.org", _, _, _} ->
NewURL = ejabberd_acme:default_directory_url(),
?WARNING_MSG("ACME directory URL ~ts defined in "
"option acme->ca_url is deprecated "
diff --git a/src/misc.erl b/src/misc.erl
index 7380011c2..5eb2cf608 100644
--- a/src/misc.erl
+++ b/src/misc.erl
@@ -62,8 +62,8 @@ uri_parse(URL) when is_binary(URL) ->
uri_parse(binary_to_list(URL));
uri_parse(URL) ->
case http_uri:parse(URL) of
- {ok, {Scheme, _UserInfo, Host, Port, Path, Query}} ->
- {ok, atom_to_list(Scheme), Host, Port, Path, Query};
+ {ok, {Scheme, UserInfo, Host, Port, Path, Query}} ->
+ {ok, atom_to_list(Scheme), UserInfo, Host, Port, Path, Query};
{error, _} = E ->
E
end.
@@ -73,11 +73,11 @@ uri_parse(URL) when is_binary(URL) ->
uri_parse(URL) ->
case uri_string:parse(URL) of
#{scheme := Scheme, host := Host, port := Port, path := Path} = M1 ->
- {ok, Scheme, Host, Port, Path, maps:get(query, M1, "")};
+ {ok, Scheme, maps:get(userinfo, M1, ""), Host, Port, Path, maps:get(query, M1, "")};
#{scheme := "https", host := Host, path := Path} = M2 ->
- {ok, "https", Host, 443, Path, maps:get(query, M2, "")};
+ {ok, "https", maps:get(userinfo, M2, ""), Host, 443, Path, maps:get(query, M2, "")};
#{scheme := "http", host := Host, path := Path} = M3 ->
- {ok, "http", Host, 80, Path, maps:get(query, M3, "")};
+ {ok, "http", maps:get(userinfo, M3, ""), Host, 80, Path, maps:get(query, M3, "")};
{error, Atom, _} ->
{error, Atom}
end.
diff --git a/src/mod_http_upload.erl b/src/mod_http_upload.erl
index 0544a837d..bda66253e 100644
--- a/src/mod_http_upload.erl
+++ b/src/mod_http_upload.erl
@@ -713,7 +713,7 @@ get_proc_name(ServerHost, ModuleName) ->
-spec get_proc_name(binary(), atom(), binary()) -> atom().
get_proc_name(ServerHost, ModuleName, PutURL) ->
%% Once we depend on OTP >= 20.0, we can use binaries with http_uri.
- {ok, _Scheme, Host0, _Port, Path0, _Query} =
+ {ok, _Scheme, _UserInfo, Host0, _Port, Path0, _Query} =
misc:uri_parse(expand_host(PutURL, ServerHost)),
Host = jid:nameprep(iolist_to_binary(Host0)),
Path = str:strip(iolist_to_binary(Path0), right, $/),
diff --git a/src/mod_sip.erl b/src/mod_sip.erl
index cc2857181..96e344569 100644
--- a/src/mod_sip.erl
+++ b/src/mod_sip.erl
@@ -357,7 +357,7 @@ mod_opt_type(via) ->
(econf:and_then(
econf:url([tls, tcp, udp]),
fun(URI) ->
- {ok, Type, Host, Port, _, _} =
+ {ok, Type, _UserInfo, Host, Port, _, _} =
misc:uri_parse(URI),
{list_to_atom(Type), {unicode:characters_to_binary(Host), Port}}
end))(U)