From 599ddf6a9b792ee1808d3c6e43c34f259779994d Mon Sep 17 00:00:00 2001 From: David JULIEN Date: Mon, 11 Sep 2023 10:11:22 +0200 Subject: [PATCH 1/2] feat: add cacerts in ssl config Since OTP version 26, default configuration includes `verify: :verify_peer` but no CA certificates are provided. We fix it by settings `:cacerts` thanks to the `certifi` lib. --- lib/eximap/imap/client.ex | 2 +- mix.exs | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/eximap/imap/client.ex b/lib/eximap/imap/client.ex index 240ef3d..ad43f98 100644 --- a/lib/eximap/imap/client.ex +++ b/lib/eximap/imap/client.ex @@ -16,7 +16,7 @@ defmodule Eximap.Imap.Client do end def init(state) do - opts = [:binary, active: false] + opts = [:binary, active: false, verify: :verify_peer, cacerts: :certifi.cacerts()] host = Application.get_env(:eximap, :incoming_mail_server) |> to_charlist port = Application.get_env(:eximap, :incoming_port) account = Application.get_env(:eximap, :account) diff --git a/mix.exs b/mix.exs index fceef2a..9a49f7a 100644 --- a/mix.exs +++ b/mix.exs @@ -48,6 +48,7 @@ defmodule Eximap.Mixfile do {:credo, "~> 0.8.8", only: [:dev, :test], runtime: false}, {:ex_doc, "~> 0.19", only: [:dev, :test], runtime: false}, {:excoveralls, "~> 0.7.4", only: [:dev, :test], runtime: false}, + {:certifi, "~> 2.12.0"} ] end From f2b19b1eba6a1b727579302661e673ce9fec7b1a Mon Sep 17 00:00:00 2001 From: David JULIEN Date: Tue, 11 Mar 2025 10:19:49 +0100 Subject: [PATCH 2/2] chore: relax certifi version --- mix.exs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mix.exs b/mix.exs index 9a49f7a..9f0b1f6 100644 --- a/mix.exs +++ b/mix.exs @@ -48,7 +48,7 @@ defmodule Eximap.Mixfile do {:credo, "~> 0.8.8", only: [:dev, :test], runtime: false}, {:ex_doc, "~> 0.19", only: [:dev, :test], runtime: false}, {:excoveralls, "~> 0.7.4", only: [:dev, :test], runtime: false}, - {:certifi, "~> 2.12.0"} + {:certifi, "~> 2.12"} ] end