mirror of
https://github.com/monero-project/monero.git
synced 2024-12-22 19:49:30 +00:00
cryptonote_protocol: print peer versions when unexpected
also avoid integer underflow on zero height
This commit is contained in:
parent
490a5d41ca
commit
25584f8639
1 changed files with 10 additions and 6 deletions
|
@ -266,13 +266,17 @@ namespace cryptonote
|
|||
return true;
|
||||
|
||||
// from v6, if the peer advertises a top block version, reject if it's not what it should be (will only work if no voting)
|
||||
const uint8_t version = m_core.get_ideal_hard_fork_version(hshd.current_height - 1);
|
||||
if (version >= 6 && version != hshd.top_version)
|
||||
if (hshd.current_height > 0)
|
||||
{
|
||||
if (version < hshd.top_version)
|
||||
MCLOG_RED(el::Level::Warning, "global", context << " peer claims higher version that we think - we may be forked from the network and a software upgrade may be needed");
|
||||
LOG_DEBUG_CC(context, "Ignoring due to wrong top version for block " << (hshd.current_height - 1) << ": " << (unsigned)hshd.top_version << ", expected " << (unsigned)version);
|
||||
return false;
|
||||
const uint8_t version = m_core.get_ideal_hard_fork_version(hshd.current_height - 1);
|
||||
if (version >= 6 && version != hshd.top_version)
|
||||
{
|
||||
if (version < hshd.top_version)
|
||||
MCLOG_RED(el::Level::Warning, "global", context << " peer claims higher version that we think (" <<
|
||||
(unsigned)hshd.top_version << " for " << (hshd.current_height - 1) << "instead of " << (unsigned)version <<
|
||||
") - we may be forked from the network and a software upgrade may be needed");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
context.m_remote_blockchain_height = hshd.current_height;
|
||||
|
|
Loading…
Reference in a new issue