24
1
mirror of https://github.com/processone/ejabberd.git synced 2024-06-16 22:05:29 +02:00

Don't call pkix_is_self_signed/1 too frequently

This commit is contained in:
Evgeniy Khramtsov 2017-12-07 17:24:34 +03:00
parent 97c9058246
commit f1ac793d56

View File

@ -767,22 +767,22 @@ get_cert_paths(Certs, G) ->
end, Certs). end, Certs).
add_edges(G, [Cert1|T], L) -> add_edges(G, [Cert1|T], L) ->
lists:foreach(
fun(Cert2) when Cert1 /= Cert2 ->
case public_key:pkix_is_self_signed(Cert1) of case public_key:pkix_is_self_signed(Cert1) of
true -> true ->
ok; ok;
false -> false ->
lists:foreach(
fun(Cert2) when Cert1 /= Cert2 ->
case public_key:pkix_is_issuer(Cert1, Cert2) of case public_key:pkix_is_issuer(Cert1, Cert2) of
true -> true ->
digraph:add_edge(G, Cert1, Cert2); digraph:add_edge(G, Cert1, Cert2);
false -> false ->
ok ok
end
end; end;
(_) -> (_) ->
ok ok
end, L), end, L)
end,
add_edges(G, T, L); add_edges(G, T, L);
add_edges(_, [], _) -> add_edges(_, [], _) ->
ok. ok.