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 54b37db commit 82777bb
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 82777bb

Please sign in to comment.