[net] Fix bug where AddrFetch connections would be counted as outbound full relay

The desired logic is for us to only open feeler connections after we have hit
the max count for outbound full relay connections.  A short lived AddrFetch
connection (previously called oneshot) could cause ThreadOpenConnections to
miscount and mistakenly open a feeler instead of full relay.
This commit is contained in:
Amiti Uttarwar
2020-06-02 09:01:36 -07:00
parent 4972c21b67
commit 35839e963b

View File

@@ -1841,7 +1841,7 @@ void CConnman::ThreadOpenConnections(const std::vector<std::string> connect)
setConnected.insert(pnode->addr.GetGroup(addrman.m_asmap));
if (pnode->m_tx_relay == nullptr) {
nOutboundBlockRelay++;
} else if (!pnode->IsFeelerConn()) {
} else if (pnode->m_conn_type == ConnectionType::OUTBOUND) {
nOutboundFullRelay++;
}
}