Skip to content

Commit

Permalink
bppp: Fix test for invalid sign byte
Browse files Browse the repository at this point in the history
The test is supposed to create an invalid sign byte. Before this PR,
the generated sign byte could in fact be valid due to an overflow.

Co-authored-by: Jonas Nick <jonasd.nick@gmail.com>
  • Loading branch information
real-or-random and jonasnick committed Jul 28, 2023
1 parent 6ba4c8b commit 00a5ccd
Showing 1 changed file with 5 additions and 1 deletion.
6 changes: 5 additions & 1 deletion src/modules/bppp/tests_impl.h
Original file line number Diff line number Diff line change
Expand Up @@ -256,7 +256,11 @@ static void test_serialize_two_points(void) {
random_group_element_test(&X);
random_group_element_test(&R);
secp256k1_bppp_serialize_points(buf, &X, &R);
buf[0] |= 4 + (unsigned char)secp256k1_testrandi64(4, 255);

buf[0] = 4 + (unsigned char)secp256k1_testrandi64(0, 253);
/* Assert that buf[0] is actually invalid. */
CHECK(buf[0] != 0x02 && buf[0] != 0x03);

CHECK(!secp256k1_bppp_parse_one_of_points(&X_tmp, buf, 0));
CHECK(!secp256k1_bppp_parse_one_of_points(&R_tmp, buf, 0));
}
Expand Down

0 comments on commit 00a5ccd

Please sign in to comment.