From 291c8697d4be0f38635b67880107e39d3ec585ad Mon Sep 17 00:00:00 2001 From: dergoegge Date: Sun, 13 Nov 2022 16:43:44 +0000 Subject: [PATCH] [fuzz] Make ConsumeNetAddr produce valid onion addresses --- src/test/fuzz/util.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/test/fuzz/util.cpp b/src/test/fuzz/util.cpp index d495a6bfe34..d27feb91564 100644 --- a/src/test/fuzz/util.cpp +++ b/src/test/fuzz/util.cpp @@ -4,6 +4,7 @@ #include #include +#include #include #include #include @@ -524,7 +525,10 @@ CNetAddr ConsumeNetAddr(FuzzedDataProvider& fuzzed_data_provider) noexcept } else if (network == Network::NET_INTERNAL) { net_addr.SetInternal(fuzzed_data_provider.ConsumeBytesAsString(32)); } else if (network == Network::NET_ONION) { - net_addr.SetSpecial(fuzzed_data_provider.ConsumeBytesAsString(32)); + auto pub_key{fuzzed_data_provider.ConsumeBytes(ADDR_TORV3_SIZE)}; + pub_key.resize(ADDR_TORV3_SIZE); + const bool ok{net_addr.SetSpecial(OnionToString(pub_key))}; + assert(ok); } return net_addr; }