Skip to content

Commit a410ae8

Browse files
committed
net, net_processing: log disconnect reasons with -debug=net
1 parent 9deba2d commit a410ae8

File tree

2 files changed

+13
-1
lines changed

2 files changed

+13
-1
lines changed

src/net.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1004,6 +1004,7 @@ bool CConnman::AttemptToEvictConnection()
10041004
LOCK(cs_vNodes);
10051005
for (CNode* pnode : vNodes) {
10061006
if (pnode->GetId() == *node_id_to_evict) {
1007+
LogPrint(BCLog::NET, "selected %s connection for eviction peer=%d; disconnecting\n", pnode->ConnectionTypeAsString(), pnode->GetId());
10071008
pnode->fDisconnect = true;
10081009
return true;
10091010
}
@@ -2693,6 +2694,7 @@ bool CConnman::DisconnectNode(const std::string& strNode)
26932694
{
26942695
LOCK(cs_vNodes);
26952696
if (CNode* pnode = FindNode(strNode)) {
2697+
LogPrint(BCLog::NET, "disconnect by address%s matched peer=%d; disconnecting\n", (fLogIPs ? strprintf("=%s", strNode) : ""), pnode->GetId());
26962698
pnode->fDisconnect = true;
26972699
return true;
26982700
}
@@ -2705,6 +2707,7 @@ bool CConnman::DisconnectNode(const CSubNet& subnet)
27052707
LOCK(cs_vNodes);
27062708
for (CNode* pnode : vNodes) {
27072709
if (subnet.Match(pnode->addr)) {
2710+
LogPrint(BCLog::NET, "disconnect by subnet%s matched peer=%d; disconnecting\n", (fLogIPs ? strprintf("=%s", subnet.ToString()) : ""), pnode->GetId());
27082711
pnode->fDisconnect = true;
27092712
disconnected = true;
27102713
}
@@ -2722,6 +2725,7 @@ bool CConnman::DisconnectNode(NodeId id)
27222725
LOCK(cs_vNodes);
27232726
for(CNode* pnode : vNodes) {
27242727
if (id == pnode->GetId()) {
2728+
LogPrint(BCLog::NET, "disconnect by id peer=%d; disconnecting\n", pnode->GetId());
27252729
pnode->fDisconnect = true;
27262730
return true;
27272731
}

src/net_processing.cpp

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2659,6 +2659,7 @@ void PeerManagerImpl::ProcessMessage(CNode& pfrom, const std::string& msg_type,
26592659

26602660
// Feeler connections exist only to verify if address is online.
26612661
if (pfrom.IsFeelerConn()) {
2662+
LogPrint(BCLog::NET, "feeler connection completed peer=%d; disconnecting\n", pfrom.GetId());
26622663
pfrom.fDisconnect = true;
26632664
}
26642665
return;
@@ -2746,6 +2747,7 @@ void PeerManagerImpl::ProcessMessage(CNode& pfrom, const std::string& msg_type,
27462747
if (pfrom.fSuccessfullyConnected) {
27472748
// Disconnect peers that send wtxidrelay message after VERACK; this
27482749
// must be negotiated between VERSION and VERACK.
2750+
LogPrint(BCLog::NET, "wtxidrelay received after verack from peer=%d; disconnecting\n", pfrom.GetId());
27492751
pfrom.fDisconnect = true;
27502752
return;
27512753
}
@@ -2763,6 +2765,7 @@ void PeerManagerImpl::ProcessMessage(CNode& pfrom, const std::string& msg_type,
27632765
if (pfrom.fSuccessfullyConnected) {
27642766
// Disconnect peers that send SENDADDRV2 message after VERACK; this
27652767
// must be negotiated between VERSION and VERACK.
2768+
LogPrint(BCLog::NET, "sendaddrv2 received after verack from peer=%d; disconnecting\n", pfrom.GetId());
27662769
pfrom.fDisconnect = true;
27672770
return;
27682771
}
@@ -2832,8 +2835,10 @@ void PeerManagerImpl::ProcessMessage(CNode& pfrom, const std::string& msg_type,
28322835
m_connman.AddNewAddresses(vAddrOk, pfrom.addr, 2 * 60 * 60);
28332836
if (vAddr.size() < 1000)
28342837
pfrom.fGetAddr = false;
2835-
if (pfrom.IsAddrFetchConn())
2838+
if (pfrom.IsAddrFetchConn()) {
2839+
LogPrint(BCLog::NET, "addrfetch connection completed peer=%d; disconnecting\n", pfrom.GetId());
28362840
pfrom.fDisconnect = true;
2841+
}
28372842
return;
28382843
}
28392844

@@ -3840,6 +3845,7 @@ void PeerManagerImpl::ProcessMessage(CNode& pfrom, const std::string& msg_type,
38403845

38413846
if (msg_type == NetMsgType::FILTERLOAD) {
38423847
if (!(pfrom.GetLocalServices() & NODE_BLOOM)) {
3848+
LogPrint(BCLog::NET, "filterload received despite not offering bloom services from peer=%d; disconnecting\n", pfrom.GetId());
38433849
pfrom.fDisconnect = true;
38443850
return;
38453851
}
@@ -3862,6 +3868,7 @@ void PeerManagerImpl::ProcessMessage(CNode& pfrom, const std::string& msg_type,
38623868

38633869
if (msg_type == NetMsgType::FILTERADD) {
38643870
if (!(pfrom.GetLocalServices() & NODE_BLOOM)) {
3871+
LogPrint(BCLog::NET, "filteradd received despite not offering bloom services from peer=%d; disconnecting\n", pfrom.GetId());
38653872
pfrom.fDisconnect = true;
38663873
return;
38673874
}
@@ -3889,6 +3896,7 @@ void PeerManagerImpl::ProcessMessage(CNode& pfrom, const std::string& msg_type,
38893896

38903897
if (msg_type == NetMsgType::FILTERCLEAR) {
38913898
if (!(pfrom.GetLocalServices() & NODE_BLOOM)) {
3899+
LogPrint(BCLog::NET, "filterclear received despite not offering bloom services from peer=%d; disconnecting\n", pfrom.GetId());
38923900
pfrom.fDisconnect = true;
38933901
return;
38943902
}

0 commit comments

Comments
 (0)