<div dir="ltr">Great, that looks like exactly what we need! Thanks Ingela.<div><br></div><div>I found the commit on the OTP repo, but could not find the branch it belonged to. Do you know when when it will be available and which release it will be part of?</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Sep 12, 2014 at 10:28 AM, Ingela Andin <span dir="ltr"><<a href="mailto:ingela.andin@gmail.com" target="_blank">ingela.andin@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>Hi!<br><br></div><div>When it comes to when to stop the path validation there is no clear answer that will always cut it and TLS, X509 RFC are not always in total agreement. Even the same<br></div><div>RFC is sometimes contradicting itself. The issue you are describing has been addressed in the latest version of the ssl application.<br><br>See commit 1c9e0651c4917b63f49d8505dba7e820da8e32d2,  where I added a new option partial_chain that lets the user decide which certificate in the chain that shall be <br>considered the trusted anchor if the whole chain can not be validated. <br><br></div><div>Regards Ingela Erlang/OTP team - Ericsson AB<br></div><div><br></div><div><div><div class="gmail_extra"> <br><div class="gmail_quote"><div><div class="h5">2014-09-10 10:16 GMT+02:00 Eric Meadows-Jönsson <span dir="ltr"><<a href="mailto:eric.meadows.jonsson@gmail.com" target="_blank">eric.meadows.jonsson@gmail.com</a>></span>:<br></div></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div class="h5"><div dir="ltr"><div>We are using httpc with the `{verify, verify_peer}` option for SSL connections. We also provide CA certificates through the `cacertfile` option. The certificate store we are using is from Mozilla [1] where we extract all certificates that been set as trusted for issuing new certificates.</div><div><br></div><div>Using this set of certificates, when accessing <a href="https://s3.amazonaws.com" target="_blank">https://s3.amazonaws.com</a>, gives us the following error:</div><div><br></div><div>    17:03:17.397 [error] SSL: :certify: ssl_handshake.erl:1389:Fatal error: unknown ca</div><div><br></div><div>Using the same certificate file with curl, python's built-in http client or ruby's http client produces no error and the connection is successful. I believe this happens because the root certificate in amazon's certificate chain is not include the certificate file. The intermediate certificate is included though, so it is trusted. It seems erlang's SSL implementation does not handle this scenario even though most HTTP clients and browsers do. From what I can read about path validation it is recommended to stop validation when a trusted certificate is found in the chain and not continue to the root and check it as well.</div><span><font color="#888888"><div><br></div>-- <br>Eric Meadows-Jönsson
</font></span></div>
<br></div></div>_______________________________________________<br>
erlang-questions mailing list<br>
<a href="mailto:erlang-questions@erlang.org" target="_blank">erlang-questions@erlang.org</a><br>
<a href="http://erlang.org/mailman/listinfo/erlang-questions" target="_blank">http://erlang.org/mailman/listinfo/erlang-questions</a><br>
<br></blockquote></div><br></div></div></div></div>
</blockquote></div><br><br clear="all"><div><br></div>-- <br>Eric Meadows-Jönsson
</div>