Radish alpha
h
Radicle Heartwood Protocol & Stack
Radicle
Git (anonymous pull)
Log in to clone via SSH
node: Don't always connect to Tor addresses
Alexis Sellier committed 2 years ago
commit 930f9b0a7e91f83a031120431db48e74c42cb96a
parent c5395f06741044f5375d8fe57e76ff56d406655b
1 file changed +6 -1
modified radicle-node/src/service.rs
@@ -24,7 +24,7 @@ use nonempty::NonEmpty;
use radicle::node;
use radicle::node::address;
use radicle::node::address::Store as _;
-
use radicle::node::address::{AddressBook, KnownAddress};
+
use radicle::node::address::{AddressBook, AddressType, KnownAddress};
use radicle::node::config::PeerConfig;
use radicle::node::refs::Store as _;
use radicle::node::routing::Store as _;
@@ -2314,6 +2314,11 @@ where
                    })
                    .map(|ka| (peer.nid, ka))
            })
+
            .filter(|(_, ka)| match AddressType::from(&ka.addr) {
+
                // Only consider Tor addresses if Tor is configured.
+
                AddressType::Onion => self.config.tor.is_some(),
+
                AddressType::Dns | AddressType::Ipv4 | AddressType::Ipv6 => true,
+
            })
            .take(wanted)
            .collect::<Vec<_>>();