<div dir="ltr">Hi,<div><br></div><div>I tried to use the partial_chain option in SSL to fix an unknown_ca issue but the  function is never executed:</div><div><br></div><div>The code is:</div><div><br></div><div><div><div>    enum_cacerts([], _Certs) -></div><div>        unknown_ca;</div><div>    enum_cacerts([Cert| Rest], Certs) -></div><div>        case lists:member(Cert, Certs) of</div><div>            true -> {trusted_ca, Cert};</div><div>            false -> enum_cacerts(Rest, Certs)</div><div>        end.</div><div><br></div></div></div><div><br></div><div><div>        CACertFile = filename:join(hackney_util:privdir(),  "ca-bundle.crt"),</div><div>        {ok, ServerCAs} = file:read_file(CACertFile),</div><div>        Pems = public_key:pem_decode(ServerCAs),</div><div>        CaCerts = lists:map(fun({_, Der, _}) -> Der end, Pems),</div><div><br></div><div>        PartialChain =  fun(ChainCerts) -></div><div>                            enum_cacerts(CaCerts, ChainCerts)</div><div>                    end,</div></div><div><br></div><div>And the SSL options are:</div><div><br></div><div><div>                    [{partial_chain, PartialChain},</div><div>                     {cacerts, CaCerts},</div><div>                     {server_name_indication, Host},</div><div>                     {verify_fun, {fun ssl_verify_hostname:verify_fun/3,</div><div>                                   [{check_hostname, Host}]}},</div><div>                     {verify, verify_peer},</div><div>                     {depth, 99}];</div></div><div><br></div><div>What am I doing wrong? I am not sure actually why the function is never executed. Any idea is welcome...</div><div><br></div><div>- benoit</div><div><br></div><div><br></div></div>