Skip to content

Commit fb02a3c

Browse files
committed
p2p: Log addresses of stalling peers
This allows node operators that have the -logips option enabled to better identify potentially misbehaving peers and maybe ban them.
1 parent 594f05d commit fb02a3c

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

src/net_processing.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5751,7 +5751,7 @@ bool PeerManagerImpl::SendMessages(CNode* pto)
57515751
// Stalling only triggers when the block download window cannot move. During normal steady state,
57525752
// the download window should be much larger than the to-be-downloaded set of blocks, so disconnection
57535753
// should only happen during initial block download.
5754-
LogPrintf("Peer=%d is stalling block download, disconnecting\n", pto->GetId());
5754+
LogPrintf("Peer=%d%s is stalling block download, disconnecting\n", pto->GetId(), fLogIPs ? strprintf(" peeraddr=%s", pto->addr.ToStringAddrPort()) : "");
57555755
pto->fDisconnect = true;
57565756
// Increase timeout for the next peer so that we don't disconnect multiple peers if our own
57575757
// bandwidth is insufficient.
@@ -5770,7 +5770,7 @@ bool PeerManagerImpl::SendMessages(CNode* pto)
57705770
QueuedBlock &queuedBlock = state.vBlocksInFlight.front();
57715771
int nOtherPeersWithValidatedDownloads = m_peers_downloading_from - 1;
57725772
if (current_time > state.m_downloading_since + std::chrono::seconds{consensusParams.nPowTargetSpacing} * (BLOCK_DOWNLOAD_TIMEOUT_BASE + BLOCK_DOWNLOAD_TIMEOUT_PER_PEER * nOtherPeersWithValidatedDownloads)) {
5773-
LogPrintf("Timeout downloading block %s from peer=%d, disconnecting\n", queuedBlock.pindex->GetBlockHash().ToString(), pto->GetId());
5773+
LogPrintf("Timeout downloading block %s from peer=%d%s, disconnecting\n", queuedBlock.pindex->GetBlockHash().ToString(), pto->GetId(), fLogIPs ? strprintf(" peeraddr=%s", pto->addr.ToStringAddrPort()) : "");
57745774
pto->fDisconnect = true;
57755775
return true;
57765776
}
@@ -5786,11 +5786,11 @@ bool PeerManagerImpl::SendMessages(CNode* pto)
57865786
// disconnect our sync peer for stalling; we have bigger
57875787
// problems if we can't get any outbound peers.
57885788
if (!pto->HasPermission(NetPermissionFlags::NoBan)) {
5789-
LogPrintf("Timeout downloading headers from peer=%d, disconnecting\n", pto->GetId());
5789+
LogPrintf("Timeout downloading headers from peer=%d%s, disconnecting\n", pto->GetId(), fLogIPs ? strprintf(" peeraddr=%s", pto->addr.ToStringAddrPort()) : "");
57905790
pto->fDisconnect = true;
57915791
return true;
57925792
} else {
5793-
LogPrintf("Timeout downloading headers from noban peer=%d, not disconnecting\n", pto->GetId());
5793+
LogPrintf("Timeout downloading headers from noban peer=%d%s, not disconnecting\n", pto->GetId(), fLogIPs ? strprintf(" peeraddr=%s", pto->addr.ToStringAddrPort()) : "");
57945794
// Reset the headers sync state so that we have a
57955795
// chance to try downloading from a different peer.
57965796
// Note: this will also result in at least one more

0 commit comments

Comments
 (0)