summaryrefslogtreecommitdiffstats
path: root/src/crypto/bn/add.c
diff options
context:
space:
mode:
authorAdam Langley <agl@chromium.org>2016-01-15 01:00:33 +0000
committerandroid-build-merger <android-build-merger@google.com>2016-01-15 01:00:33 +0000
commit6290bff2114c67a0d1a57e75b0a11544ad894406 (patch)
tree80b47f41b8e3971267452f49e48560c9c36434e2 /src/crypto/bn/add.c
parent7410f4ee26ae91ef240e8e767e9f91e83ba32d38 (diff)
parent4139edb02e59e7ad48e0a8f4c02e45923bc8a344 (diff)
downloadexternal_boringssl-6290bff2114c67a0d1a57e75b0a11544ad894406.zip
external_boringssl-6290bff2114c67a0d1a57e75b0a11544ad894406.tar.gz
external_boringssl-6290bff2114c67a0d1a57e75b0a11544ad894406.tar.bz2
external/boringssl: sync to 7b8b9c17
am: 4139edb02e * commit '4139edb02e59e7ad48e0a8f4c02e45923bc8a344': external/boringssl: sync to 7b8b9c17
Diffstat (limited to 'src/crypto/bn/add.c')
-rw-r--r--src/crypto/bn/add.c25
1 files changed, 4 insertions, 21 deletions
diff --git a/src/crypto/bn/add.c b/src/crypto/bn/add.c
index a043d83..23f9f80 100644
--- a/src/crypto/bn/add.c
+++ b/src/crypto/bn/add.c
@@ -56,6 +56,8 @@
#include <openssl/bn.h>
+#include <string.h>
+
#include <openssl/err.h>
#include <openssl/mem.h>
@@ -311,27 +313,8 @@ int BN_usub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b) {
}
}
- if (rp != ap) {
- for (;;) {
- if (!dif--) {
- break;
- }
- rp[0] = ap[0];
- if (!dif--) {
- break;
- }
- rp[1] = ap[1];
- if (!dif--) {
- break;
- }
- rp[2] = ap[2];
- if (!dif--) {
- break;
- }
- rp[3] = ap[3];
- rp += 4;
- ap += 4;
- }
+ if (dif > 0 && rp != ap) {
+ memcpy(rp, ap, sizeof(*rp) * dif);
}
r->top = max;