|
@@ -28,7 +28,7 @@ use log::{debug, error, info, trace, warn};
|
|
|
use rand::{prelude::IteratorRandom, rngs::OsRng, Rng};
|
|
use rand::{prelude::IteratorRandom, rngs::OsRng, Rng};
|
|
|
use url::Url;
|
|
use url::Url;
|
|
|
|
|
|
|
|
-use super::{settings::SettingsPtr, ChannelPtr};
|
|
|
|
|
|
|
+use super::{settings::Settings, ChannelPtr};
|
|
|
use crate::{
|
|
use crate::{
|
|
|
system::{Publisher, PublisherPtr, Subscription},
|
|
system::{Publisher, PublisherPtr, Subscription},
|
|
|
util::{
|
|
util::{
|
|
@@ -817,12 +817,12 @@ pub struct Hosts {
|
|
|
pub(in crate::net) ipv6_available: Mutex<bool>,
|
|
pub(in crate::net) ipv6_available: Mutex<bool>,
|
|
|
|
|
|
|
|
/// Pointer to configured P2P settings
|
|
/// Pointer to configured P2P settings
|
|
|
- settings: SettingsPtr,
|
|
|
|
|
|
|
+ settings: Arc<Settings>,
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
impl Hosts {
|
|
impl Hosts {
|
|
|
/// Create a new hosts list
|
|
/// Create a new hosts list
|
|
|
- pub(in crate::net) fn new(settings: SettingsPtr) -> HostsPtr {
|
|
|
|
|
|
|
+ pub(in crate::net) fn new(settings: Arc<Settings>) -> HostsPtr {
|
|
|
Arc::new(Self {
|
|
Arc::new(Self {
|
|
|
registry: Mutex::new(HashMap::new()),
|
|
registry: Mutex::new(HashMap::new()),
|
|
|
container: HostContainer::new(),
|
|
container: HostContainer::new(),
|
|
@@ -1105,7 +1105,7 @@ impl Hosts {
|
|
|
|
|
|
|
|
/// Filter given addresses based on certain rulesets and validity. Strictly called only on
|
|
/// Filter given addresses based on certain rulesets and validity. Strictly called only on
|
|
|
/// the first time learning of new peers.
|
|
/// the first time learning of new peers.
|
|
|
- fn filter_addresses(&self, settings: SettingsPtr, addrs: &[(Url, u64)]) -> Vec<(Url, u64)> {
|
|
|
|
|
|
|
+ fn filter_addresses(&self, settings: Arc<Settings>, addrs: &[(Url, u64)]) -> Vec<(Url, u64)> {
|
|
|
debug!(target: "net::hosts::filter_addresses()", "Filtering addrs: {:?}", addrs);
|
|
debug!(target: "net::hosts::filter_addresses()", "Filtering addrs: {:?}", addrs);
|
|
|
let mut ret = vec![];
|
|
let mut ret = vec![];
|
|
|
let localnet = self.settings.localnet;
|
|
let localnet = self.settings.localnet;
|