Changeset View
Changeset View
Standalone View
Standalone View
src/test/fuzz/process_message.cpp
Show First 20 Lines • Show All 75 Lines • ▼ Show 20 Lines | void test_one_input(const std::vector<uint8_t> &buffer) { | ||||
CNode &p2p_node = | CNode &p2p_node = | ||||
*std::make_unique<CNode>( | *std::make_unique<CNode>( | ||||
0, ServiceFlags(NODE_NETWORK | NODE_BLOOM), 0, INVALID_SOCKET, | 0, ServiceFlags(NODE_NETWORK | NODE_BLOOM), 0, INVALID_SOCKET, | ||||
CAddress{CService{in_addr{0x0100007f}, 7777}, NODE_NETWORK}, 0, 0, | CAddress{CService{in_addr{0x0100007f}, 7777}, NODE_NETWORK}, 0, 0, | ||||
0, CAddress{}, std::string{}, ConnectionType::OUTBOUND) | 0, CAddress{}, std::string{}, ConnectionType::OUTBOUND) | ||||
.release(); | .release(); | ||||
p2p_node.fSuccessfullyConnected = true; | p2p_node.fSuccessfullyConnected = true; | ||||
p2p_node.nVersion = PROTOCOL_VERSION; | p2p_node.nVersion = PROTOCOL_VERSION; | ||||
p2p_node.SetSendVersion(PROTOCOL_VERSION); | p2p_node.SetCommonVersion(PROTOCOL_VERSION); | ||||
connman.AddTestNode(p2p_node); | connman.AddTestNode(p2p_node); | ||||
g_setup->m_node.peerman->InitializeNode(config, &p2p_node); | g_setup->m_node.peerman->InitializeNode(config, &p2p_node); | ||||
try { | try { | ||||
g_setup->m_node.peerman->ProcessMessage( | g_setup->m_node.peerman->ProcessMessage( | ||||
config, p2p_node, random_message_type, random_bytes_data_stream, | config, p2p_node, random_message_type, random_bytes_data_stream, | ||||
GetTime<std::chrono::microseconds>(), std::atomic<bool>{false}); | GetTime<std::chrono::microseconds>(), std::atomic<bool>{false}); | ||||
} catch (const std::ios_base::failure &) { | } catch (const std::ios_base::failure &) { | ||||
} | } | ||||
SyncWithValidationInterfaceQueue(); | SyncWithValidationInterfaceQueue(); | ||||
// See init.cpp for rationale for implicit locking order requirement | // See init.cpp for rationale for implicit locking order requirement | ||||
LOCK2(::cs_main, g_cs_orphans); | LOCK2(::cs_main, g_cs_orphans); | ||||
g_setup->m_node.connman->StopNodes(); | g_setup->m_node.connman->StopNodes(); | ||||
} | } |