From 5ed84e98af24fe99fceac06d4f1e505f6ada7350 Mon Sep 17 00:00:00 2001 From: Chandra Pratap Date: Mon, 19 May 2025 05:07:19 +0000 Subject: [PATCH 1/4] fuzz-tests: Replace manual allocations with `tal_arr()` Changelog-None: Use the common library utilities for temporary allocations instead of manually calling `malloc` and `free`. This makes the code conformant with rest of the codebase and reduces the chances of leaks. --- tests/fuzz/fuzz-bech32.c | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) diff --git a/tests/fuzz/fuzz-bech32.c b/tests/fuzz/fuzz-bech32.c index a397dc86efa5..beda53bee749 100644 --- a/tests/fuzz/fuzz-bech32.c +++ b/tests/fuzz/fuzz-bech32.c @@ -1,6 +1,6 @@ #include "config.h" #include - +#include #include #include #include @@ -25,11 +25,11 @@ void run(const uint8_t *data, size_t size) /* Buffer size is defined in each function's doc comment. */ benc = data[0] ? BECH32_ENCODING_BECH32 : BECH32_ENCODING_BECH32M; bech32_str_cap = (size - 1) + strlen(hrp_inv) + 8; - bech32_str = malloc(bech32_str_cap); + bech32_str = tal_arr(tmpctx, char, bech32_str_cap); if (bech32_encode(bech32_str, hrp_inv, data + 1, size - 1, bech32_str_cap, benc) == 1) { - hrp_out = malloc(strlen(bech32_str) - 6); - data_out = malloc(strlen(bech32_str) - 8); + hrp_out = tal_arr(tmpctx, char, strlen(bech32_str) - 6); + data_out = tal_arr(tmpctx, uint8_t, strlen(bech32_str) - 8); benc_decoded = bech32_decode(hrp_out, data_out, &data_out_len, bech32_str, bech32_str_cap); @@ -37,13 +37,9 @@ void run(const uint8_t *data, size_t size) assert(strcmp(hrp_inv, hrp_out) == 0); assert(data_out_len == size - 1); assert(memcmp(data_out, data + 1, data_out_len) == 0); - - free(hrp_out); - free(data_out); } - free(bech32_str); - data_out = malloc(size); + data_out = tal_arr(tmpctx, uint8_t, size); /* This is also used as part of sign and check message. */ data_out_len = 0; @@ -51,7 +47,7 @@ void run(const uint8_t *data, size_t size) data_out_len = 0; bech32_convert_bits(data_out, &data_out_len, 8, data, size, 5, 0); - addr = malloc(73 + strlen(hrp_addr)); + addr = tal_arr(tmpctx, char, 73 + strlen(hrp_addr)); for (int wit_version = 0; wit_version < 2; ++wit_version) { if (segwit_addr_encode(addr, hrp_addr, wit_version, data, size) == 0) @@ -63,7 +59,6 @@ void run(const uint8_t *data, size_t size) assert(data_out_len == size); assert(memcmp(data_out, data, data_out_len) == 0); } - free(addr); - free(data_out); + clean_tmpctx(); } From bfb072ea8985eaa663373ec349319333ca538098 Mon Sep 17 00:00:00 2001 From: Chandra Pratap Date: Mon, 19 May 2025 05:14:03 +0000 Subject: [PATCH 2/4] fuzz-tests: Test over all possible witness version values According to `common/bech32.h`, the valid values of witness program version are between 0 and 16 (inclusive). Update the test to iterate over all of these values. --- tests/fuzz/fuzz-bech32.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/fuzz/fuzz-bech32.c b/tests/fuzz/fuzz-bech32.c index beda53bee749..6d6b346fcf97 100644 --- a/tests/fuzz/fuzz-bech32.c +++ b/tests/fuzz/fuzz-bech32.c @@ -48,7 +48,7 @@ void run(const uint8_t *data, size_t size) bech32_convert_bits(data_out, &data_out_len, 8, data, size, 5, 0); addr = tal_arr(tmpctx, char, 73 + strlen(hrp_addr)); - for (int wit_version = 0; wit_version < 2; ++wit_version) { + for (int wit_version = 0; wit_version <= 16; ++wit_version) { if (segwit_addr_encode(addr, hrp_addr, wit_version, data, size) == 0) continue; From c7f37f82ef075106aec5c75e5ec7dfd97048423e Mon Sep 17 00:00:00 2001 From: Chandra Pratap Date: Mon, 19 May 2025 05:21:12 +0000 Subject: [PATCH 3/4] fuzz-tests: test 8-to-5 bit conversion Currently, the test only verifies the 5-to-8 bit conversion. Replace it with a roundtrip check that verifies 8-to-5 bit conversion as well. --- tests/fuzz/fuzz-bech32.c | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/tests/fuzz/fuzz-bech32.c b/tests/fuzz/fuzz-bech32.c index 6d6b346fcf97..fbf3d09771f7 100644 --- a/tests/fuzz/fuzz-bech32.c +++ b/tests/fuzz/fuzz-bech32.c @@ -39,13 +39,22 @@ void run(const uint8_t *data, size_t size) assert(memcmp(data_out, data + 1, data_out_len) == 0); } - data_out = tal_arr(tmpctx, uint8_t, size); + data_out = tal_arr(tmpctx, uint8_t, size * 2); /* This is also used as part of sign and check message. */ data_out_len = 0; - bech32_convert_bits(data_out, &data_out_len, 8, data, size, 5, 1); - data_out_len = 0; - bech32_convert_bits(data_out, &data_out_len, 8, data, size, 5, 0); + /* First conversion uses pad=1 to ensure all bits are captured. */ + if (bech32_convert_bits(data_out, &data_out_len, 5, data, size, 8, 1)) { + uint8_t *deconv_data_out = tal_arr(tmpctx, uint8_t, size); + size_t deconv_data_out_len = 0; + + /* Second uses pad=0 to discard padding bits during reconstruction. */ + if (bech32_convert_bits(deconv_data_out, &deconv_data_out_len, 8, + data_out, data_out_len, 5, 0)) { + assert(deconv_data_out_len == size); + assert(memcmp(data, deconv_data_out, size) == 0); + } + } addr = tal_arr(tmpctx, char, 73 + strlen(hrp_addr)); for (int wit_version = 0; wit_version <= 16; ++wit_version) { From f5953749a1d08e199e22ed3a7b0dc62853f92840 Mon Sep 17 00:00:00 2001 From: Chandra Pratap Date: Mon, 19 May 2025 05:46:48 +0000 Subject: [PATCH 4/4] fuzz-tests: Add coverage-increasing inputs to seed corpora Change in the fuzzing scheme of fuzz-bech32 led to the discovery of test inputs that result in greater in code coverage. Add these inputs to the test's seed corpus. --- .../021c6a117bbeedd66c400e03186da32e9a7700e9 | Bin 0 -> 36 bytes .../0545d3433ff85218bedc9637a5d0c05a1e22e256 | Bin 0 -> 192 bytes .../0f0f0f97640694464e724aa71ffa5c098b65008b | Bin 0 -> 57 bytes .../10d9edc7c9a43b56ea4f2db112e0dd1a4e7a8114 | Bin 0 -> 758 bytes .../15cc9a20663aee467a3cdcf5d5c65968865c7712 | Bin 0 -> 434 bytes .../1a16fa61ed2b8a2dc0359d8b50be5506749563ac | Bin 0 -> 23 bytes .../24fca7d248c865ee4f7d363e7c9f5dbcd5775d1c | Bin 0 -> 431 bytes .../3fa7dff1285a3d28f27647847b9526a1e1bdf2e6 | Bin 0 -> 22 bytes .../402d79697def0e3c833480eb6ab78cc7d41bdbbb | Bin 0 -> 107 bytes .../495f3510514e3478a8a79fcce5d82d3f84070075 | Bin 0 -> 19 bytes .../4b35503f2f332cf487fd5590776d51b2873c017a | Bin 0 -> 429 bytes .../4e89eea7bf3064f317ff28d942c288f9d5a325d5 | Bin 0 -> 33 bytes .../4fe4ba4ea08e4ed6316a838ac1f66f0b224ac4ee | Bin 0 -> 81 bytes .../53f104823f39f6668044e80df813376661335cb8 | Bin 0 -> 432 bytes .../5851450502f36b32cacf3e9f3f4624959a07bca2 | Bin 0 -> 30 bytes .../5b387b8e7d89b3d33fb566ae40b465ec73c81dac | Bin 0 -> 21 bytes .../6bed2b5f2beee9be1f3c7d6fcfd51c695e87c8d0 | Bin 0 -> 22 bytes .../6dba3c058e2438db8fda6dd0de27291a58d61e46 | Bin 0 -> 10 bytes .../6f94c70c9b4e914460dec089ad309274f80ec36f | Bin 0 -> 430 bytes .../7442de8c9a3651195b5c7a7a110f63b5b324ffbc | Bin 0 -> 195 bytes .../77cd1e6dbfb8955912c858a45f31b04a820a5340 | 1 + .../8bc4b2994863098ca375381b3fc3fd5dd4f86ce3 | Bin 0 -> 31 bytes .../8c73f0b41bca02c3c48c299e25c7029157948557 | Bin 0 -> 34 bytes .../8cbe90263b35f01fddd68ab23d67f0b815c3d898 | Bin 0 -> 30 bytes .../8e17c42d3f9db95e9df7a5f81135a499f4315b79 | Bin 0 -> 69 bytes .../94d2b847dcee5933470f64f3495dd7895341f8c2 | Bin 0 -> 38 bytes .../9790037ff5c75a2a0b0fe08055b46540e069f84e | Bin 0 -> 440 bytes .../a8972e8a0069a0d9d2781c399b8634cdfeec252d | Bin 0 -> 80 bytes .../ad6bcfc5fccbb6e0891d531b191b9d7bad04a4b6 | 1 + .../aea188cbabfe863dbffff50e0434af6009dcdabc | Bin 0 -> 82 bytes .../b0ef7e6d3214a88fad8fd88683fa8c2c6c6c6867 | Bin 0 -> 37 bytes .../c4dbfd68c2498802293df057225a1dad92a0be90 | Bin 0 -> 100 bytes .../c523762d2864dfb59f7bcd63826bffe0a084ae4a | 1 + .../c5c1caef0ca2830611fd8666653effff8a1ac88d | Bin 0 -> 429 bytes .../d0c7f156ef754d95f87f9032d44295c12045cce1 | Bin 0 -> 6 bytes .../d8b83ae8ea0a8663b1785fcbe03022cab529fa5f | Bin 0 -> 14 bytes .../d9ad1d836b42385c2cd0a0cbf0491e33ed9cab3c | Bin 0 -> 25 bytes .../dac531eca9ca0403bea12eed1021939e5dd9b8fd | Bin 0 -> 28 bytes .../dc30ceaa73c9440cd63123009ee75a988302b802 | Bin 0 -> 80 bytes .../de7fe4ed0f2c485421b5faa4640bbc835ca68b54 | Bin 0 -> 83 bytes .../df660f37d1acbbe7da97e771b27eae7a93fa2013 | Bin 0 -> 101 bytes .../e0b2b5fee8c55d357c5c392a5a0721c211dbc74f | Bin 0 -> 10 bytes .../f13bb7f6255685e2d8ada4567c4d6e6007e2e33f | Bin 0 -> 7 bytes 43 files changed, 3 insertions(+) create mode 100644 tests/fuzz/corpora/fuzz-bech32/021c6a117bbeedd66c400e03186da32e9a7700e9 create mode 100644 tests/fuzz/corpora/fuzz-bech32/0545d3433ff85218bedc9637a5d0c05a1e22e256 create mode 100644 tests/fuzz/corpora/fuzz-bech32/0f0f0f97640694464e724aa71ffa5c098b65008b create mode 100644 tests/fuzz/corpora/fuzz-bech32/10d9edc7c9a43b56ea4f2db112e0dd1a4e7a8114 create mode 100644 tests/fuzz/corpora/fuzz-bech32/15cc9a20663aee467a3cdcf5d5c65968865c7712 create mode 100644 tests/fuzz/corpora/fuzz-bech32/1a16fa61ed2b8a2dc0359d8b50be5506749563ac create mode 100644 tests/fuzz/corpora/fuzz-bech32/24fca7d248c865ee4f7d363e7c9f5dbcd5775d1c create mode 100644 tests/fuzz/corpora/fuzz-bech32/3fa7dff1285a3d28f27647847b9526a1e1bdf2e6 create mode 100644 tests/fuzz/corpora/fuzz-bech32/402d79697def0e3c833480eb6ab78cc7d41bdbbb create mode 100644 tests/fuzz/corpora/fuzz-bech32/495f3510514e3478a8a79fcce5d82d3f84070075 create mode 100644 tests/fuzz/corpora/fuzz-bech32/4b35503f2f332cf487fd5590776d51b2873c017a create mode 100644 tests/fuzz/corpora/fuzz-bech32/4e89eea7bf3064f317ff28d942c288f9d5a325d5 create mode 100644 tests/fuzz/corpora/fuzz-bech32/4fe4ba4ea08e4ed6316a838ac1f66f0b224ac4ee create mode 100644 tests/fuzz/corpora/fuzz-bech32/53f104823f39f6668044e80df813376661335cb8 create mode 100644 tests/fuzz/corpora/fuzz-bech32/5851450502f36b32cacf3e9f3f4624959a07bca2 create mode 100644 tests/fuzz/corpora/fuzz-bech32/5b387b8e7d89b3d33fb566ae40b465ec73c81dac create mode 100644 tests/fuzz/corpora/fuzz-bech32/6bed2b5f2beee9be1f3c7d6fcfd51c695e87c8d0 create mode 100644 tests/fuzz/corpora/fuzz-bech32/6dba3c058e2438db8fda6dd0de27291a58d61e46 create mode 100644 tests/fuzz/corpora/fuzz-bech32/6f94c70c9b4e914460dec089ad309274f80ec36f create mode 100644 tests/fuzz/corpora/fuzz-bech32/7442de8c9a3651195b5c7a7a110f63b5b324ffbc create mode 100644 tests/fuzz/corpora/fuzz-bech32/77cd1e6dbfb8955912c858a45f31b04a820a5340 create mode 100644 tests/fuzz/corpora/fuzz-bech32/8bc4b2994863098ca375381b3fc3fd5dd4f86ce3 create mode 100644 tests/fuzz/corpora/fuzz-bech32/8c73f0b41bca02c3c48c299e25c7029157948557 create mode 100644 tests/fuzz/corpora/fuzz-bech32/8cbe90263b35f01fddd68ab23d67f0b815c3d898 create mode 100644 tests/fuzz/corpora/fuzz-bech32/8e17c42d3f9db95e9df7a5f81135a499f4315b79 create mode 100644 tests/fuzz/corpora/fuzz-bech32/94d2b847dcee5933470f64f3495dd7895341f8c2 create mode 100644 tests/fuzz/corpora/fuzz-bech32/9790037ff5c75a2a0b0fe08055b46540e069f84e create mode 100644 tests/fuzz/corpora/fuzz-bech32/a8972e8a0069a0d9d2781c399b8634cdfeec252d create mode 100644 tests/fuzz/corpora/fuzz-bech32/ad6bcfc5fccbb6e0891d531b191b9d7bad04a4b6 create mode 100644 tests/fuzz/corpora/fuzz-bech32/aea188cbabfe863dbffff50e0434af6009dcdabc create mode 100644 tests/fuzz/corpora/fuzz-bech32/b0ef7e6d3214a88fad8fd88683fa8c2c6c6c6867 create mode 100644 tests/fuzz/corpora/fuzz-bech32/c4dbfd68c2498802293df057225a1dad92a0be90 create mode 100644 tests/fuzz/corpora/fuzz-bech32/c523762d2864dfb59f7bcd63826bffe0a084ae4a create mode 100644 tests/fuzz/corpora/fuzz-bech32/c5c1caef0ca2830611fd8666653effff8a1ac88d create mode 100644 tests/fuzz/corpora/fuzz-bech32/d0c7f156ef754d95f87f9032d44295c12045cce1 create mode 100644 tests/fuzz/corpora/fuzz-bech32/d8b83ae8ea0a8663b1785fcbe03022cab529fa5f create mode 100644 tests/fuzz/corpora/fuzz-bech32/d9ad1d836b42385c2cd0a0cbf0491e33ed9cab3c create mode 100644 tests/fuzz/corpora/fuzz-bech32/dac531eca9ca0403bea12eed1021939e5dd9b8fd create mode 100644 tests/fuzz/corpora/fuzz-bech32/dc30ceaa73c9440cd63123009ee75a988302b802 create mode 100644 tests/fuzz/corpora/fuzz-bech32/de7fe4ed0f2c485421b5faa4640bbc835ca68b54 create mode 100644 tests/fuzz/corpora/fuzz-bech32/df660f37d1acbbe7da97e771b27eae7a93fa2013 create mode 100644 tests/fuzz/corpora/fuzz-bech32/e0b2b5fee8c55d357c5c392a5a0721c211dbc74f create mode 100644 tests/fuzz/corpora/fuzz-bech32/f13bb7f6255685e2d8ada4567c4d6e6007e2e33f diff --git a/tests/fuzz/corpora/fuzz-bech32/021c6a117bbeedd66c400e03186da32e9a7700e9 b/tests/fuzz/corpora/fuzz-bech32/021c6a117bbeedd66c400e03186da32e9a7700e9 new file mode 100644 index 0000000000000000000000000000000000000000..562a8a0a50a1e1d54de22e0c48d14c6290c3a10b GIT binary patch literal 36 bcmd;JfCF1m22nv#QAQC_AOMPjFc<&;7JLCI literal 0 HcmV?d00001 diff --git a/tests/fuzz/corpora/fuzz-bech32/0545d3433ff85218bedc9637a5d0c05a1e22e256 b/tests/fuzz/corpora/fuzz-bech32/0545d3433ff85218bedc9637a5d0c05a1e22e256 new file mode 100644 index 0000000000000000000000000000000000000000..40105d9ef57b21d8441cd691610adb85201b1e8e GIT binary patch literal 192 fcmeywKpBuh2C@(il#-EQK$gVHCf0H;b{r}JN`42< literal 0 HcmV?d00001 diff --git a/tests/fuzz/corpora/fuzz-bech32/0f0f0f97640694464e724aa71ffa5c098b65008b b/tests/fuzz/corpora/fuzz-bech32/0f0f0f97640694464e724aa71ffa5c098b65008b new file mode 100644 index 0000000000000000000000000000000000000000..06582060c0f42d1a261998248886f8c496925559 GIT binary patch literal 57 RcmZQzWcbwbi6p=P1^`j!Ec5^X literal 0 HcmV?d00001 diff --git a/tests/fuzz/corpora/fuzz-bech32/10d9edc7c9a43b56ea4f2db112e0dd1a4e7a8114 b/tests/fuzz/corpora/fuzz-bech32/10d9edc7c9a43b56ea4f2db112e0dd1a4e7a8114 new file mode 100644 index 0000000000000000000000000000000000000000..ae6f7a69ef2066f0e99b41175b8ef084d8083182 GIT binary patch literal 758 zcmeywfC>~)xp3Yc1b~a7Fc9*jvKSa-kbx{RhZHu7b4ccp>S~1g!Qp PBx{hE)U*M=SqUNl)KVn& literal 0 HcmV?d00001 diff --git a/tests/fuzz/corpora/fuzz-bech32/1a16fa61ed2b8a2dc0359d8b50be5506749563ac b/tests/fuzz/corpora/fuzz-bech32/1a16fa61ed2b8a2dc0359d8b50be5506749563ac new file mode 100644 index 0000000000000000000000000000000000000000..3a110c422d256dbe47cd6b45f51a5497f03b135e GIT binary patch literal 23 ZcmWd;0RvHy7}3{{ESwn{0vH&8A^60P{!>5Y?gv<=S literal 0 HcmV?d00001 diff --git a/tests/fuzz/corpora/fuzz-bech32/4b35503f2f332cf487fd5590776d51b2873c017a b/tests/fuzz/corpora/fuzz-bech32/4b35503f2f332cf487fd5590776d51b2873c017a new file mode 100644 index 0000000000000000000000000000000000000000..2ccb5a1317700183a372b28732cc204b26a57617 GIT binary patch literal 429 zcmeyw00fMTAQBI_0|(d@!KF!Ks3$D;YSDg|kRxAi0YJi9I-&wxl_Oiyeo0 E0DNRclmGw# literal 0 HcmV?d00001 diff --git a/tests/fuzz/corpora/fuzz-bech32/4e89eea7bf3064f317ff28d942c288f9d5a325d5 b/tests/fuzz/corpora/fuzz-bech32/4e89eea7bf3064f317ff28d942c288f9d5a325d5 new file mode 100644 index 0000000000000000000000000000000000000000..099dcbb9736047a611049f0fa5591b66ad833851 GIT binary patch literal 33 dcmd;JULohXz6b literal 0 HcmV?d00001 diff --git a/tests/fuzz/corpora/fuzz-bech32/53f104823f39f6668044e80df813376661335cb8 b/tests/fuzz/corpora/fuzz-bech32/53f104823f39f6668044e80df813376661335cb8 new file mode 100644 index 0000000000000000000000000000000000000000..93dbd6aba81f88428ab0beb932f87a728295211c GIT binary patch literal 432 ucmZP&p&STPZUiMJh~m_YTLz~Vs041Em@=3m5JQlH1&N8n<`5j>=)wSZt|9LL literal 0 HcmV?d00001 diff --git a/tests/fuzz/corpora/fuzz-bech32/5851450502f36b32cacf3e9f3f4624959a07bca2 b/tests/fuzz/corpora/fuzz-bech32/5851450502f36b32cacf3e9f3f4624959a07bca2 new file mode 100644 index 0000000000000000000000000000000000000000..dafa6f6d9048a265b1a327f8590d9be669fe3083 GIT binary patch literal 30 WcmZQz00Ik3%^8dg0p?&Jj|2ce9|S@G literal 0 HcmV?d00001 diff --git a/tests/fuzz/corpora/fuzz-bech32/5b387b8e7d89b3d33fb566ae40b465ec73c81dac b/tests/fuzz/corpora/fuzz-bech32/5b387b8e7d89b3d33fb566ae40b465ec73c81dac new file mode 100644 index 0000000000000000000000000000000000000000..993a80ecbae3aeae900e906b9dae577ce3c0f2cb GIT binary patch literal 21 XcmeyOyVSEmfPsNQgCUTCK?DK-Ik*F* literal 0 HcmV?d00001 diff --git a/tests/fuzz/corpora/fuzz-bech32/6bed2b5f2beee9be1f3c7d6fcfd51c695e87c8d0 b/tests/fuzz/corpora/fuzz-bech32/6bed2b5f2beee9be1f3c7d6fcfd51c695e87c8d0 new file mode 100644 index 0000000000000000000000000000000000000000..c501768e14c26268dbeb20d2a5c1b822adaf309b GIT binary patch literal 22 WcmZShzX1$HfPj~QfdNE|hyVa%KLzyw literal 0 HcmV?d00001 diff --git a/tests/fuzz/corpora/fuzz-bech32/6dba3c058e2438db8fda6dd0de27291a58d61e46 b/tests/fuzz/corpora/fuzz-bech32/6dba3c058e2438db8fda6dd0de27291a58d61e46 new file mode 100644 index 0000000000000000000000000000000000000000..e716f0a333a6c53e8c851b09b27555da602470b7 GIT binary patch literal 10 OcmZRO2LT~1d3gW@Y5^7i literal 0 HcmV?d00001 diff --git a/tests/fuzz/corpora/fuzz-bech32/6f94c70c9b4e914460dec089ad309274f80ec36f b/tests/fuzz/corpora/fuzz-bech32/6f94c70c9b4e914460dec089ad309274f80ec36f new file mode 100644 index 0000000000000000000000000000000000000000..d72bbc20d9155301dbdd21aa742f4904a6d73940 GIT binary patch literal 430 zcmeywKpeP(0N6Dk}42%q5@c-xk|GHqo|Nr5VP(INVwavp}F#tW&te*e? literal 0 HcmV?d00001 diff --git a/tests/fuzz/corpora/fuzz-bech32/77cd1e6dbfb8955912c858a45f31b04a820a5340 b/tests/fuzz/corpora/fuzz-bech32/77cd1e6dbfb8955912c858a45f31b04a820a5340 new file mode 100644 index 000000000000..ab92badf8106 --- /dev/null +++ b/tests/fuzz/corpora/fuzz-bech32/77cd1e6dbfb8955912c858a45f31b04a820a5340 @@ -0,0 +1 @@ +;,;, \ No newline at end of file diff --git a/tests/fuzz/corpora/fuzz-bech32/8bc4b2994863098ca375381b3fc3fd5dd4f86ce3 b/tests/fuzz/corpora/fuzz-bech32/8bc4b2994863098ca375381b3fc3fd5dd4f86ce3 new file mode 100644 index 0000000000000000000000000000000000000000..6be6ffcf83e6ef4c3408ea21301affac22e4d17b GIT binary patch literal 31 icmZQ&U|`?^Vj!p$We^n<6=f6=6%`c(@;We^n<6=f6=1p**n^e6%iF-fC3R98v=x&w5X^k04f#&TL1t6 literal 0 HcmV?d00001 diff --git a/tests/fuzz/corpora/fuzz-bech32/9790037ff5c75a2a0b0fe08055b46540e069f84e b/tests/fuzz/corpora/fuzz-bech32/9790037ff5c75a2a0b0fe08055b46540e069f84e new file mode 100644 index 0000000000000000000000000000000000000000..a0a18ad85bc439463cbac34db37cd3d8a6f5b63c GIT binary patch literal 440 wcmeyg)Ki0@A&`Msa0dafYeC49%3@%UK?btO98%cW-8D!=ZAo(n7dsC10EVPS9RL6T literal 0 HcmV?d00001 diff --git a/tests/fuzz/corpora/fuzz-bech32/a8972e8a0069a0d9d2781c399b8634cdfeec252d b/tests/fuzz/corpora/fuzz-bech32/a8972e8a0069a0d9d2781c399b8634cdfeec252d new file mode 100644 index 0000000000000000000000000000000000000000..bcea0f3baad0c2a908990ac449d757daaec4a417 GIT binary patch literal 80 tcmZP&!2}G(ml*zoK;eG|Ao!mH0{{PGDg=sv)&2jUbD5)%i-AF%0RUgl7>ob_ literal 0 HcmV?d00001 diff --git a/tests/fuzz/corpora/fuzz-bech32/ad6bcfc5fccbb6e0891d531b191b9d7bad04a4b6 b/tests/fuzz/corpora/fuzz-bech32/ad6bcfc5fccbb6e0891d531b191b9d7bad04a4b6 new file mode 100644 index 000000000000..a02671b34816 --- /dev/null +++ b/tests/fuzz/corpora/fuzz-bech32/ad6bcfc5fccbb6e0891d531b191b9d7bad04a4b6 @@ -0,0 +1 @@ += \ No newline at end of file diff --git a/tests/fuzz/corpora/fuzz-bech32/aea188cbabfe863dbffff50e0434af6009dcdabc b/tests/fuzz/corpora/fuzz-bech32/aea188cbabfe863dbffff50e0434af6009dcdabc new file mode 100644 index 0000000000000000000000000000000000000000..ef59df751d21d73f78081567055fb839246d01c7 GIT binary patch literal 82 Tcmb32Vu;#60${)a5Jmt14&5c* literal 0 HcmV?d00001 diff --git a/tests/fuzz/corpora/fuzz-bech32/b0ef7e6d3214a88fad8fd88683fa8c2c6c6c6867 b/tests/fuzz/corpora/fuzz-bech32/b0ef7e6d3214a88fad8fd88683fa8c2c6c6c6867 new file mode 100644 index 0000000000000000000000000000000000000000..dc434ab848627cbb8d467f1c91bceac79bea96c6 GIT binary patch literal 37 icmd;JU literal 0 HcmV?d00001 diff --git a/tests/fuzz/corpora/fuzz-bech32/de7fe4ed0f2c485421b5faa4640bbc835ca68b54 b/tests/fuzz/corpora/fuzz-bech32/de7fe4ed0f2c485421b5faa4640bbc835ca68b54 new file mode 100644 index 0000000000000000000000000000000000000000..b1c4334923bdceff7310397f2de4a902a8e9ed58 GIT binary patch literal 83 McmdvC literal 0 HcmV?d00001 diff --git a/tests/fuzz/corpora/fuzz-bech32/f13bb7f6255685e2d8ada4567c4d6e6007e2e33f b/tests/fuzz/corpora/fuzz-bech32/f13bb7f6255685e2d8ada4567c4d6e6007e2e33f new file mode 100644 index 0000000000000000000000000000000000000000..7fcb1952f9ac2b3e1e12575def14b8a95649c4b1 GIT binary patch literal 7 OcmWe=V9*u$!vFvVUjfbl literal 0 HcmV?d00001