bn_lib.c: Change Endianess check to as a binary condition.

This prevents VS2022 from mis-identify an uninitialized local pointer
variable.

CLA: trivial

Reviewed-by: Ben Kaduk <kaduk@mit.edu>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/17567)
This commit is contained in:
Kelvin Lee 2022-01-22 11:22:31 +11:00 committed by Tomas Mraz
parent 63b996e752
commit 649999dc57

View File

@ -455,18 +455,15 @@ static BIGNUM *bin2bn(const unsigned char *s, int len, BIGNUM *ret,
* significant BIGNUM chunk, so we adapt parameters to transfer
* input bytes accordingly.
*/
switch (endianess) {
case LITTLE:
if (endianess == LITTLE) {
s2 = s + len - 1;
inc2 = -1;
inc = 1;
break;
case BIG:
} else {
s2 = s;
inc2 = 1;
inc = -1;
s += len - 1;
break;
}
/* Take note of the signedness of the input bytes*/
@ -593,14 +590,11 @@ static int bn2binpad(const BIGNUM *a, unsigned char *to, int tolen,
* to most significant BIGNUM limb, so we adapt parameters to
* transfer output bytes accordingly.
*/
switch (endianess) {
case LITTLE:
if (endianess == LITTLE) {
inc = 1;
break;
case BIG:
} else {
inc = -1;
to += tolen - 1; /* Move to the last byte, not beyond */
break;
}
lasti = atop - 1;