projects
/
oweals
/
openssl.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
e110729
)
Avoid potential overflow to the sign bit when shifting left 24 places
author
Tomas Mraz
<tmraz@fedoraproject.org>
Tue, 19 May 2020 08:51:53 +0000
(10:51 +0200)
committer
Tomas Mraz
<tmraz@fedoraproject.org>
Wed, 20 May 2020 15:58:06 +0000
(17:58 +0200)
Although there are platforms where int is 64 bit, 2GiB large BIGNUMs
instead of 4GiB should be "big enough for everybody".
Reviewed-by: Richard Levitte <levitte@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/11857)
(cherry picked from commit
1d05eb55caa8965a151360c2469c463ecd990987
)
crypto/bn/bn_mpi.c
patch
|
blob
|
history
diff --git
a/crypto/bn/bn_mpi.c
b/crypto/bn/bn_mpi.c
index bdbe822415c7914c2f87e1150242b7310096ac15..b6e35a8ed947a34bff4a7dfe3659a7db3307f2f7 100644
(file)
--- a/
crypto/bn/bn_mpi.c
+++ b/
crypto/bn/bn_mpi.c
@@
-45,7
+45,7
@@
BIGNUM *BN_mpi2bn(const unsigned char *d, int n, BIGNUM *ain)
int neg = 0;
BIGNUM *a = NULL;
- if (n < 4) {
+ if (n < 4
|| (d[0] & 0x80) != 0
) {
BNerr(BN_F_BN_MPI2BN, BN_R_INVALID_LENGTH);
return NULL;
}