Skip to content

Commit 248bffb

Browse files
committed
Guard memcmp in tests against mixed size inputs.
Reported by real-or-random. Fixes dashpay#623.
1 parent 36698dc commit 248bffb

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

src/tests.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4315,7 +4315,7 @@ int test_ecdsa_der_parse(const unsigned char *sig, size_t siglen, int certainly_
43154315
if (valid_der) {
43164316
ret |= (!roundtrips_der_lax) << 12;
43174317
ret |= (len_der != len_der_lax) << 13;
4318-
ret |= (memcmp(roundtrip_der_lax, roundtrip_der, len_der) != 0) << 14;
4318+
ret |= ((len_der != len_der_lax) || (memcmp(roundtrip_der_lax, roundtrip_der, len_der) != 0)) << 14;
43194319
}
43204320
ret |= (roundtrips_der != roundtrips_der_lax) << 15;
43214321
if (parsed_der) {
@@ -4356,7 +4356,7 @@ int test_ecdsa_der_parse(const unsigned char *sig, size_t siglen, int certainly_
43564356
ret |= (roundtrips_der != roundtrips_openssl) << 7;
43574357
if (roundtrips_openssl) {
43584358
ret |= (len_der != (size_t)len_openssl) << 8;
4359-
ret |= (memcmp(roundtrip_der, roundtrip_openssl, len_der) != 0) << 9;
4359+
ret |= ((len_der != (size_t)len_openssl) || (memcmp(roundtrip_der, roundtrip_openssl, len_der) != 0)) << 9;
43604360
}
43614361
#endif
43624362
return ret;

0 commit comments

Comments
 (0)