From aaaa9c6019790a1a21a7b4ef01693ac9390ae6d0 Mon Sep 17 00:00:00 2001 From: MarcoFalke Date: Mon, 19 Jul 2021 13:18:28 +0200 Subject: [PATCH] fuzz: Extend addrman fuzz test with deserialize --- src/test/fuzz/addrman.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/test/fuzz/addrman.cpp b/src/test/fuzz/addrman.cpp index db0b461873..9a983a3227 100644 --- a/src/test/fuzz/addrman.cpp +++ b/src/test/fuzz/addrman.cpp @@ -44,6 +44,17 @@ FUZZ_TARGET_INIT(addrman, initialize_addrman) addr_man.m_asmap.clear(); } } + if (fuzzed_data_provider.ConsumeBool()) { + const std::vector serialized_data{ConsumeRandomLengthByteVector(fuzzed_data_provider)}; + CDataStream ds(serialized_data, SER_DISK, INIT_PROTO_VERSION); + const auto ser_version{fuzzed_data_provider.ConsumeIntegral()}; + ds.SetVersion(ser_version); + try { + ds >> addr_man; + } catch (const std::ios_base::failure&) { + addr_man.Clear(); + } + } while (fuzzed_data_provider.ConsumeBool()) { CallOneOf( fuzzed_data_provider,