diff options
| author | tb <> | 2023-07-07 07:47:25 +0000 |
|---|---|---|
| committer | tb <> | 2023-07-07 07:47:25 +0000 |
| commit | 21eddabc863b067714fdd732d1a7466ddad0cda4 (patch) | |
| tree | 8ffa9bec18d2eb3bd31f1732e786b2aced1e7b64 | |
| parent | ff3b387e5174bcab413248207feaf6caff7df2e4 (diff) | |
| download | openbsd-21eddabc863b067714fdd732d1a7466ddad0cda4.tar.gz openbsd-21eddabc863b067714fdd732d1a7466ddad0cda4.tar.bz2 openbsd-21eddabc863b067714fdd732d1a7466ddad0cda4.zip | |
Add test coverage for leading zero octet dance
| -rw-r--r-- | src/regress/lib/libcrypto/bn/bn_print.c | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/regress/lib/libcrypto/bn/bn_print.c b/src/regress/lib/libcrypto/bn/bn_print.c index ce3d50d261..24f261d921 100644 --- a/src/regress/lib/libcrypto/bn/bn_print.c +++ b/src/regress/lib/libcrypto/bn/bn_print.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: bn_print.c,v 1.2 2023/07/06 15:11:21 tb Exp $ */ | 1 | /* $OpenBSD: bn_print.c,v 1.3 2023/07/07 07:47:25 tb Exp $ */ |
| 2 | 2 | ||
| 3 | /* | 3 | /* |
| 4 | * Copyright (c) 2023 Theo Buehler <tb@openbsd.org> | 4 | * Copyright (c) 2023 Theo Buehler <tb@openbsd.org> |
| @@ -134,6 +134,11 @@ const struct print_test { | |||
| 134 | " 47:e2:1a:e6:63:b8:3d:2e:2f:78:c4:4f:db:f4:0f:\n" | 134 | " 47:e2:1a:e6:63:b8:3d:2e:2f:78:c4:4f:db:f4:0f:\n" |
| 135 | " a4:68:4c:55:72:6b:95:1d:4e:18:42:95:78:cc:37\n", | 135 | " a4:68:4c:55:72:6b:95:1d:4e:18:42:95:78:cc:37\n", |
| 136 | }, | 136 | }, |
| 137 | { | ||
| 138 | .desc = "high bit of first nibble is set", | ||
| 139 | .want = " mana mana\n" | ||
| 140 | " 00:80:00:00:00:00:00:00:00:00\n", | ||
| 141 | }, | ||
| 137 | }; | 142 | }; |
| 138 | 143 | ||
| 139 | #define N_TESTCASES (sizeof(bn_print_tests) / sizeof(bn_print_tests[0])) | 144 | #define N_TESTCASES (sizeof(bn_print_tests) / sizeof(bn_print_tests[0])) |
| @@ -267,6 +272,15 @@ main(void) | |||
| 267 | test = &bn_print_tests[testcase++]; | 272 | test = &bn_print_tests[testcase++]; |
| 268 | failed |= bn_print_testcase(bn, test); | 273 | failed |= bn_print_testcase(bn, test); |
| 269 | 274 | ||
| 275 | /* high bit of first nibble is set. */ | ||
| 276 | BN_zero(bn); | ||
| 277 | if (!BN_set_bit(bn, 71)) | ||
| 278 | errx(1, "BN_set_bit"); | ||
| 279 | if (testcase >= N_TESTCASES) | ||
| 280 | errx(1, "Too many tests"); | ||
| 281 | test = &bn_print_tests[testcase++]; | ||
| 282 | failed |= bn_print_testcase(bn, test); | ||
| 283 | |||
| 270 | if (testcase != N_TESTCASES) { | 284 | if (testcase != N_TESTCASES) { |
| 271 | warnx("Not all tests run"); | 285 | warnx("Not all tests run"); |
| 272 | failed |= 1; | 286 | failed |= 1; |
