commit | 6d9e5a74482bb832a6b4d9ae3d20d8f10f250bbd | [log] [tgz] |
---|---|---|
author | David Benjamin <davidben@chromium.org> | Thu Dec 03 11:55:10 2015 -0500 |
committer | Adam Langley <agl@google.com> | Thu Dec 03 17:25:12 2015 +0000 |
tree | a3f3bb107aef96639d6b8f0591a643748f66ae9a | |
parent | 28243c08db9ec595ce49fefb10fe2ea18386d21a [diff] |
Re-apply 75b833cc819a9d189adb0fdd56327bee600ff9e9 I messed up and missed that we were carrying a diff on x86_64-mont5.pl. This was accidentally dropped in https://boringssl-review.googlesource.com/6616. To confirm the merge is good now, check out at this revision and run: git diff e701f16bd69b6f251ed537e40364c281e85a63b2^ crypto/bn/asm/x86_64-mont5.pl > /tmp/A Then in OpenSSL's repository: git diff d73cc256c8e256c32ed959456101b73ba9842f72^ d73cc256c8e256c32ed959456101b73ba9842f72 crypto/bn/asm/x86_64-mont5.pl > /tmp/B And confirm the diffs vary in only metadata: diff -u /tmp/A /tmp/B --- /tmp/A 2015-12-03 11:53:23.127034998 -0500 +++ /tmp/B 2015-12-03 11:53:53.099314287 -0500 @@ -1,8 +1,8 @@ diff --git a/crypto/bn/asm/x86_64-mont5.pl b/crypto/bn/asm/x86_64-mont5.pl -index 38def07..3c5a8fc 100644 +index 388e3c6..64e668f 100755 --- a/crypto/bn/asm/x86_64-mont5.pl +++ b/crypto/bn/asm/x86_64-mont5.pl -@@ -1770,6 +1770,15 @@ sqr8x_reduction: +@@ -1784,6 +1784,15 @@ sqr8x_reduction: .align 32 .L8x_tail_done: add (%rdx),%r8 # can this overflow? @@ -18,7 +18,7 @@ xor %rax,%rax neg $carry -@@ -3116,6 +3125,15 @@ sqrx8x_reduction: +@@ -3130,6 +3139,15 @@ sqrx8x_reduction: .align 32 .Lsqrx8x_tail_done: add 24+8(%rsp),%r8 # can this overflow? @@ -34,7 +34,7 @@ mov $carry,%rax # xor %rax,%rax sub 16+8(%rsp),$carry # mov 16(%rsp),%cf -@@ -3159,13 +3177,11 @@ my ($rptr,$nptr)=("%rdx","%rbp"); +@@ -3173,13 +3191,11 @@ my ($rptr,$nptr)=("%rdx","%rbp"); my @ri=map("%r$_",(10..13)); my @ni=map("%r$_",(14..15)); $code.=<<___; Change-Id: I3fb5253783ed82e4831f5bffde75273bd9609c23 Reviewed-on: https://boringssl-review.googlesource.com/6618 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: