Modify tcp_channels::bootstrap_peer to read config value for minimum peer version, rather than passing as an argument. (#4179)

This commit is contained in:
clemahieu 2023-03-10 12:09:24 +00:00 committed by GitHub
commit 4b4c271d3c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 5 additions and 4 deletions

View file

@ -662,7 +662,7 @@ void nano::network::fill_keepalive_self (std::array<nano::endpoint, 8> & target_
nano::tcp_endpoint nano::network::bootstrap_peer ()
{
return tcp_channels.bootstrap_peer (node.network_params.network.protocol_version_min);
return tcp_channels.bootstrap_peer ();
}
std::shared_ptr<nano::transport::channel> nano::network::find_channel (nano::endpoint const & endpoint_a)

View file

@ -1,3 +1,4 @@
#include <nano/lib/config.hpp>
#include <nano/lib/stats.hpp>
#include <nano/node/node.hpp>
#include <nano/node/transport/message_deserializer.hpp>
@ -254,13 +255,13 @@ std::shared_ptr<nano::transport::channel_tcp> nano::transport::tcp_channels::fin
return result;
}
nano::tcp_endpoint nano::transport::tcp_channels::bootstrap_peer (uint8_t connection_protocol_version_min)
nano::tcp_endpoint nano::transport::tcp_channels::bootstrap_peer ()
{
nano::tcp_endpoint result (boost::asio::ip::address_v6::any (), 0);
nano::lock_guard<nano::mutex> lock{ mutex };
for (auto i (channels.get<last_bootstrap_attempt_tag> ().begin ()), n (channels.get<last_bootstrap_attempt_tag> ().end ()); i != n;)
{
if (i->channel->get_network_version () >= connection_protocol_version_min)
if (i->channel->get_network_version () >= node.network_params.network.protocol_version_min)
{
result = nano::transport::map_endpoint_to_tcp (i->channel->get_peering_endpoint ());
channels.get<last_bootstrap_attempt_tag> ().modify (i, [] (channel_tcp_wrapper & wrapper_a) {

View file

@ -108,7 +108,7 @@ namespace transport
bool store_all (bool = true);
std::shared_ptr<nano::transport::channel_tcp> find_node_id (nano::account const &);
// Get the next peer for attempting a tcp connection
nano::tcp_endpoint bootstrap_peer (uint8_t connection_protocol_version_min);
nano::tcp_endpoint bootstrap_peer ();
void receive ();
void start ();
void stop ();