27 static const auto testing_setup = MakeNoLogFileContext<const TestingSetup>();
28 g_setup = testing_setup.get();
35 CConnman connman{fuzzed_data_provider.ConsumeIntegral<uint64_t>(),
36 fuzzed_data_provider.ConsumeIntegral<uint64_t>(),
38 *g_setup->m_node.netgroupman,
39 fuzzed_data_provider.ConsumeBool()};
43 std::string random_string;
54 random_string = fuzzed_data_provider.ConsumeRandomLengthString(64);
57 connman.AddNode(random_string);
60 connman.CheckIncomingNonce(fuzzed_data_provider.ConsumeIntegral<uint64_t>());
63 connman.DisconnectNode(fuzzed_data_provider.ConsumeIntegral<
NodeId>());
66 connman.DisconnectNode(random_netaddr);
69 connman.DisconnectNode(random_string);
72 connman.DisconnectNode(random_subnet);
75 connman.ForEachNode([](
auto) {});
78 (void)connman.ForNode(fuzzed_data_provider.ConsumeIntegral<
NodeId>(), [&](
auto) { return fuzzed_data_provider.ConsumeBool(); });
81 (void)connman.GetAddresses(
82 fuzzed_data_provider.ConsumeIntegral<
size_t>(),
83 fuzzed_data_provider.ConsumeIntegral<
size_t>(),
87 (void)connman.GetAddresses(
89 fuzzed_data_provider.ConsumeIntegral<
size_t>(),
90 fuzzed_data_provider.ConsumeIntegral<
size_t>());
93 (void)connman.GetDeterministicRandomizer(fuzzed_data_provider.ConsumeIntegral<uint64_t>());
96 (void)connman.GetNodeCount(fuzzed_data_provider.PickValueInArray({ConnectionDirection::None, ConnectionDirection::In, ConnectionDirection::Out, ConnectionDirection::Both}));
99 (void)connman.OutboundTargetReached(fuzzed_data_provider.ConsumeBool());
105 connman.PushMessage(&random_node, std::move(serialized_net_msg));
108 connman.RemoveAddedNode(random_string);
111 connman.SetNetworkActive(fuzzed_data_provider.ConsumeBool());
114 connman.SetTryNewOutboundPeer(fuzzed_data_provider.ConsumeBool());
117 (void)connman.GetAddedNodeInfo();
118 (void)connman.GetExtraFullOutboundCount();
119 (void)connman.GetLocalServices();
120 (void)connman.GetMaxOutboundTarget();
121 (void)connman.GetMaxOutboundTimeframe();
122 (void)connman.GetMaxOutboundTimeLeftInCycle();
123 (void)connman.GetNetworkActive();
124 std::vector<CNodeStats> stats;
125 connman.GetNodeStats(stats);
126 (void)connman.GetOutboundTargetBytesLeft();
127 (void)connman.GetReceiveFloodSize();
128 (void)connman.GetTotalBytesRecv();
129 (void)connman.GetTotalBytesSent();
130 (void)connman.GetTryNewOutboundPeer();
131 (void)connman.GetUseAddrmanOutgoing();
FUZZ_TARGET_INIT(connman, initialize_connman)
std::vector< unsigned char > data
CSubNet ConsumeSubNet(FuzzedDataProvider &fuzzed_data_provider) noexcept
#define LIMITED_WHILE(condition, limit)
Can be used to limit a theoretically unbounded loop.
void SetMockTime(int64_t nMockTimeIn)
DEPRECATED Use SetMockTime with chrono type.
CNetAddr ConsumeNetAddr(FuzzedDataProvider &fuzzed_data_provider) noexcept
std::vector< uint8_t > ConsumeRandomLengthByteVector(FuzzedDataProvider &fuzzed_data_provider, const std::optional< size_t > &max_length=std::nullopt) noexcept
int64_t ConsumeTime(FuzzedDataProvider &fuzzed_data_provider, const std::optional< int64_t > &min, const std::optional< int64_t > &max) noexcept
size_t CallOneOf(FuzzedDataProvider &fuzzed_data_provider, Callables... callables)
Information about a peer.
void initialize_connman()
auto ConsumeNode(FuzzedDataProvider &fuzzed_data_provider, const std::optional< NodeId > &node_id_in=std::nullopt) noexcept
Testing setup that configures a complete environment.