From 220c6939b1b793945dbf3080a9e1d4218b134d37 Mon Sep 17 00:00:00 2001 From: SChernykh Date: Mon, 28 Nov 2022 08:29:38 +0100 Subject: [PATCH] Ignore shares from peers who have lagging monerod More than 10 seconds lag is unacceptable --- src/p2p_server.cpp | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/p2p_server.cpp b/src/p2p_server.cpp index d1a0b45..ae9348a 100644 --- a/src/p2p_server.cpp +++ b/src/p2p_server.cpp @@ -1980,13 +1980,10 @@ bool P2PServer::P2PClient::on_block_broadcast(const uint8_t* buf, uint32_t size, if (our_height - peer_height < 5) { using namespace std::chrono; const int64_t elapsed_ms = duration_cast(high_resolution_clock::now() - miner_data.time_received).count(); - if (our_height - peer_height > 1) { + if ((our_height - peer_height > 1) || (elapsed_ms > 10000)) { LOGWARN(5, "peer " << static_cast(m_addrString) << " broadcasted a stale block (" << elapsed_ms << " ms late, mainchain height " << peer_height << ", expected >= " << our_height << "), ignoring it"); return true; } - else { - LOGINFO(5, "peer " << static_cast(m_addrString) << " broadcasted a stale block (" << elapsed_ms << " ms late, mainchain height " << peer_height << ", expected >= " << our_height << ")"); - } } else { LOGWARN(4, "peer " << static_cast(m_addrString) << " broadcasted an unreasonably stale block (mainchain height " << peer_height << ", expected >= " << our_height << ')');