Changeset View
Changeset View
Standalone View
Standalone View
src/test/fuzz/process_messages.cpp
| Show First 20 Lines • Show All 43 Lines • ▼ Show 20 Lines | for (int i = 0; i < num_peers_to_add; ++i) { | ||||
| const ServiceFlags service_flags = | const ServiceFlags service_flags = | ||||
| ServiceFlags(fuzzed_data_provider.ConsumeIntegral<uint64_t>()); | ServiceFlags(fuzzed_data_provider.ConsumeIntegral<uint64_t>()); | ||||
| const ConnectionType conn_type = fuzzed_data_provider.PickValueInArray( | const ConnectionType conn_type = fuzzed_data_provider.PickValueInArray( | ||||
| {ConnectionType::INBOUND, ConnectionType::OUTBOUND_FULL_RELAY, | {ConnectionType::INBOUND, ConnectionType::OUTBOUND_FULL_RELAY, | ||||
| ConnectionType::MANUAL, ConnectionType::FEELER, | ConnectionType::MANUAL, ConnectionType::FEELER, | ||||
| ConnectionType::BLOCK_RELAY, ConnectionType::ADDR_FETCH}); | ConnectionType::BLOCK_RELAY, ConnectionType::ADDR_FETCH}); | ||||
| peers.push_back( | peers.push_back( | ||||
| std::make_unique<CNode>( | std::make_unique<CNode>( | ||||
| i, service_flags, INVALID_SOCKET, | i, INVALID_SOCKET, | ||||
| CAddress{CService{in_addr{0x0100007f}, 7777}, NODE_NETWORK}, 0, | CAddress{CService{in_addr{0x0100007f}, 7777}, NODE_NETWORK}, 0, | ||||
| 0, 0, CAddress{}, std::string{}, conn_type, | 0, 0, CAddress{}, std::string{}, conn_type, | ||||
| conn_type == ConnectionType::INBOUND | conn_type == ConnectionType::INBOUND | ||||
| ? fuzzed_data_provider.ConsumeBool() | ? fuzzed_data_provider.ConsumeBool() | ||||
| : false) | : false) | ||||
| .release()); | .release()); | ||||
| CNode &p2p_node = *peers.back(); | CNode &p2p_node = *peers.back(); | ||||
| p2p_node.fSuccessfullyConnected = true; | p2p_node.fSuccessfullyConnected = true; | ||||
| p2p_node.fPauseSend = false; | p2p_node.fPauseSend = false; | ||||
| p2p_node.nVersion = PROTOCOL_VERSION; | p2p_node.nVersion = PROTOCOL_VERSION; | ||||
| p2p_node.SetCommonVersion(PROTOCOL_VERSION); | p2p_node.SetCommonVersion(PROTOCOL_VERSION); | ||||
| g_setup->m_node.peerman->InitializeNode(config, p2p_node, | g_setup->m_node.peerman->InitializeNode(config, p2p_node, | ||||
| p2p_node.GetLocalServices()); | service_flags); | ||||
| connman.AddTestNode(p2p_node); | connman.AddTestNode(p2p_node); | ||||
| } | } | ||||
| while (fuzzed_data_provider.ConsumeBool()) { | while (fuzzed_data_provider.ConsumeBool()) { | ||||
| const std::string random_message_type{ | const std::string random_message_type{ | ||||
| fuzzed_data_provider | fuzzed_data_provider | ||||
| .ConsumeBytesAsString(CMessageHeader::COMMAND_SIZE) | .ConsumeBytesAsString(CMessageHeader::COMMAND_SIZE) | ||||
| Show All 21 Lines | |||||