Go to file
David Benjamin 93d17499e9 Deprecate SSL_want*.
This is redundant with SSL_get_error. Neither is very good API, but
SSL_get_error is more common. SSL_get_error also takes a return code
which makes it harder to accidentally call it at some a point other than
immediately after an operation. (Any other point is confusing since you
can have SSL_read and SSL_write operations going on in parallel and
they'll get mixed up.)

Change-Id: I5818527c30daac28edb552c6c550c05c8580292d
Reviewed-on: https://boringssl-review.googlesource.com/6294
Reviewed-by: Adam Langley <alangley@gmail.com>
2015-10-20 18:42:15 +00:00
crypto Convert ssl3_send_client_hello to CBB. 2015-10-20 17:56:19 +00:00
decrepit Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
include/openssl Deprecate SSL_want*. 2015-10-20 18:42:15 +00:00
ssl Deprecate SSL_want*. 2015-10-20 18:42:15 +00:00
tool Check fread's return value in tool/server.cc. 2015-08-28 22:47:26 +00:00
util Updating Bazel outputs to work on other platforms. 2015-10-07 00:57:20 +00:00
.clang-format Inital import. 2014-06-20 13:17:32 -07:00
.gitignore Fix documentation generation on Windows. 2015-08-19 00:45:42 +00:00
BUILDING.md Make the runner tests a go “test” 2015-09-30 17:10:45 +00:00
CMakeLists.txt Silence MSVC warning C4210. 2015-10-13 18:20:29 +00:00
codereview.settings Add a codereview.settings file. 2014-11-18 22:21:33 +00:00
LICENSE Note that some files carry in Intel license. 2015-07-28 00:55:32 +00:00
PORTING.md Document the hexadecimal casing thing in PORTING.md. 2015-09-29 23:37:50 +00:00
README.md Links in README.md, take two. 2015-10-13 18:04:43 +00:00
STYLE.md Markdown-ify STYLE. 2015-09-03 18:37:39 +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:

  • PORTING.md: how to port OpenSSL-using code to BoringSSL.
  • BUILDING.md: how to build BoringSSL
  • STYLE.md: rules and guidelines for coding style.
  • include/openssl: public headers with API documentation in comments. Also available online.