Go to file
Martin Kreichgauer 3c995f30e7 Fix overflow in c2i_ASN1_BIT_STRING.
c2i_ASN1_BIT_STRING takes length as a long but uses it as an int. Check bounds
before doing so. Previously, excessively large inputs to the function could
write a single byte outside the target buffer. (This is unreachable as
asn1_ex_c2i already uses int for the length.)

Thanks to NCC for finding this issue.

Change-Id: I7ae42214ca620d4159fa01c942153717a7647c65
Reviewed-on: https://boringssl-review.googlesource.com/19204
Reviewed-by: Martin Kreichgauer <martinkr@google.com>
Commit-Queue: Martin Kreichgauer <martinkr@google.com>
CQ-Verified: CQ bot account: commit-bot@chromium.org <commit-bot@chromium.org>
2017-09-06 21:58:26 +00:00
.github
crypto Fix overflow in c2i_ASN1_BIT_STRING. 2017-09-06 21:58:26 +00:00
decrepit Run the comment conversion script on decrepit/ 2017-08-18 00:05:52 +00:00
fipstools Have run_cavp.go create “resp” directories as needed. 2017-06-08 19:13:01 +00:00
fuzz Run the comment converter on fuzz/ and tool/ 2017-08-18 16:42:13 +00:00
include/openssl Make SNI per-connection, not per-session. 2017-09-06 20:25:26 +00:00
infra/config CQ: bring back Windows builders. 2017-08-16 06:57:35 +00:00
ssl Properly report SSL_session_reused after a renegotiation. 2017-09-06 20:56:06 +00:00
third_party Fix build with VS 2017. 2017-06-07 18:56:06 +00:00
tool Make SSL_state_string_long work for TLS 1.3. 2017-08-18 19:38:33 +00:00
util Update to Go 1.9 on the bots. 2017-08-29 19:52:02 +00:00
.clang-format
.gitignore Add sde-linux64 to .gitignore. 2017-05-12 14:53:07 +00:00
API-CONVENTIONS.md Fix API-CONVENTIONS.md typos. 2017-01-04 01:46:32 +00:00
BUILDING.md Revert ADX due to build issues. 2017-08-15 18:56:09 +00:00
CMakeLists.txt Tidy up some Windows compiler assumptions. 2017-08-16 19:57:06 +00:00
codereview.settings No-op change to trigger the new Bazel bot. 2016-07-07 12:07:04 -07:00
CONTRIBUTING.md
FUZZING.md Fix typo in FUZZING.md. 2017-07-06 18:25:07 +00:00
INCORPORATING.md Update links to Bazel's site. 2016-10-31 18:16:58 +00:00
LICENSE
PORTING.md Don't reauthenticate on renegotiation. 2017-08-24 16:14:22 +00:00
README.md Add an API-CONVENTIONS.md document. 2016-08-04 23:27:49 +00:00
sources.cmake Implement scrypt from RFC 7914. 2017-06-12 20:32:21 +00:00
STYLE.md Fix some style guide samples. 2017-08-31 14:24:45 +00:00

BoringSSL

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: