mirror of
https://github.com/monero-project/monero.git
synced 2025-08-16 20:50:26 -04:00
protocol: drop origin IP if a block fails to verify in sync mode
It would otherwise be possible for a peer to send bad blocks, then disconnect and reconnect again, escaping bans
This commit is contained in:
parent
316dcaa399
commit
d660f22ed1
6 changed files with 64 additions and 33 deletions
|
@ -2914,11 +2914,7 @@ namespace cryptonote
|
|||
block_queue.foreach([&](const cryptonote::block_queue::span &span) {
|
||||
const std::string span_connection_id = epee::string_tools::pod_to_hex(span.connection_id);
|
||||
uint32_t speed = (uint32_t)(100.0f * block_queue.get_speed(span.connection_id) + 0.5f);
|
||||
std::string address = "";
|
||||
for (const auto &c: m_p2p.get_payload_object().get_connections())
|
||||
if (c.connection_id == span_connection_id)
|
||||
address = c.address;
|
||||
res.spans.push_back({span.start_block_height, span.nblocks, span_connection_id, (uint32_t)(span.rate + 0.5f), speed, span.size, address});
|
||||
res.spans.push_back({span.start_block_height, span.nblocks, span_connection_id, (uint32_t)(span.rate + 0.5f), speed, span.size, span.origin.str()});
|
||||
return true;
|
||||
});
|
||||
res.overview = block_queue.get_overview(res.height);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue