From 9eed22e870e650cadf5f65650917da21836d2bb0 Mon Sep 17 00:00:00 2001 From: Martin Zumsande Date: Mon, 11 Dec 2023 16:05:29 -0500 Subject: [PATCH] net: attempt v2 transport for addrfetch connections if we support it --- src/net.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/net.cpp b/src/net.cpp index 5d432cca14c..cfdd443dfb4 100644 --- a/src/net.cpp +++ b/src/net.cpp @@ -2322,10 +2322,13 @@ void CConnman::ProcessAddrFetch() strDest = m_addr_fetches.front(); m_addr_fetches.pop_front(); } + // Attempt v2 connection if we support v2 - we'll reconnect with v1 if our + // peer doesn't support it or immediately disconnects us for another reason. + const bool use_v2transport(GetLocalServices() & NODE_P2P_V2); CAddress addr; CSemaphoreGrant grant(*semOutbound, /*fTry=*/true); if (grant) { - OpenNetworkConnection(addr, false, std::move(grant), strDest.c_str(), ConnectionType::ADDR_FETCH, /*use_v2transport=*/false); + OpenNetworkConnection(addr, false, std::move(grant), strDest.c_str(), ConnectionType::ADDR_FETCH, use_v2transport); } }