From d727836e2bc964fdabe4fbc1b5c1b60533ab4dbe Mon Sep 17 00:00:00 2001 From: Antoine Date: Mon, 3 Jun 2024 20:25:17 +0200 Subject: [PATCH] feat(portal): support for tls only smtp servers (#5126) `tls_options` are only used for STARTTLS. To handle SMTP servers where SSL/TLS is enforced (i.e `ssl: "true"`), users must be able to provide custom `sockopts` https://github.com/gen-smtp/gen_smtp/blob/da7893dbe5dc20f1d6137141a4ec49f910a7cef6/src/gen_smtp_client.erl#L853 --- elixir/apps/domain/lib/domain/config/definitions.ex | 1 + elixir/apps/domain/lib/domain/config/dumper.ex | 1 + 2 files changed, 2 insertions(+) diff --git a/elixir/apps/domain/lib/domain/config/definitions.ex b/elixir/apps/domain/lib/domain/config/definitions.ex index 5c30c770f..e8a80ed35 100644 --- a/elixir/apps/domain/lib/domain/config/definitions.ex +++ b/elixir/apps/domain/lib/domain/config/definitions.ex @@ -586,6 +586,7 @@ defmodule Domain.Config.Definitions do dump: fn map -> Dumper.keyword(map) |> Keyword.update(:tls_options, nil, &Dumper.dump_ssl_opts/1) + |> Keyword.update(:sockopts, nil, &Dumper.dump_ssl_opts/1) end ) diff --git a/elixir/apps/domain/lib/domain/config/dumper.ex b/elixir/apps/domain/lib/domain/config/dumper.ex index c73dfadc3..92f362a04 100644 --- a/elixir/apps/domain/lib/domain/config/dumper.ex +++ b/elixir/apps/domain/lib/domain/config/dumper.ex @@ -22,6 +22,7 @@ defmodule Domain.Config.Dumper do end defp map_values("verify", v), do: String.to_atom(v) + defp map_values("depth", v), do: v defp map_values("versions", v), do: Enum.map(v, &String.to_charlist/1) defp map_values("cacertfile", v), do: String.to_charlist(v) defp map_values("server_name_indication", v), do: String.to_charlist(v)