commit | 59bae5aa3acd5a724e29f621795b14ba8e47f81f | [log] [tgz] |
---|---|---|
author | David Benjamin <davidben@google.com> | Thu Feb 02 23:51:22 2017 -0500 |
committer | Adam Langley <agl@google.com> | Thu Feb 09 02:15:27 2017 +0000 |
tree | 52a24cd729cfee9c1a09775dc721084dadee7bd9 | |
parent | 7dccc71e08105b100c3acd56fa5f6fc1ba9b71d3 [diff] |
Split TLS 1.2 ClientHello processing into separate functions. This ABCD thing with multiple ways to enter the same function is confusing. ClientHello processing is the most egregious of these, so split it up ahead of time as an intermediate step. States remain named as-is due to them being exposed as public API. We should have a story for which subset of states we need to promise as public API and to intentionally break all other cases (map to some generic value) before we go too far there. BUG=128 Change-Id: Id9d28c6de14bd53c3294552691cebe705748f489 Reviewed-on: https://boringssl-review.googlesource.com/13563 Reviewed-by: Adam Langley <agl@google.com>
BoringSSL is a fork of OpenSSL that is designed to meet Google's needs.
Although BoringSSL is an open source project, it is not intended for general use, as OpenSSL is. We don't recommend that third parties depend upon it. Doing so is likely to be frustrating because there are no guarantees of API or ABI stability.
Programs ship their own copies of BoringSSL when they use it and we update everything as needed when deciding to make API changes. This allows us to mostly avoid compromises in the name of compatibility. It works for us, but it may not work for you.
BoringSSL arose because Google used OpenSSL for many years in various ways and, over time, built up a large number of patches that were maintained while tracking upstream OpenSSL. As Google's product portfolio became more complex, more copies of OpenSSL sprung up and the effort involved in maintaining all these patches in multiple places was growing steadily.
Currently BoringSSL is the SSL library in Chrome/Chromium, Android (but it's not part of the NDK) and a number of other apps/programs.
There are other files in this directory which might be helpful: