flutter and macos work
This commit is contained in:
@@ -730,6 +730,7 @@ impl RoutingTable {
|
||||
best_inbound_relay.map(|(k, e)| NodeRef::new(self.clone(), *k, e, None))
|
||||
}
|
||||
|
||||
#[instrument(level = "trace", skip(self), ret, err)]
|
||||
pub fn register_find_node_answer(&self, fna: FindNodeAnswer) -> Result<Vec<NodeRef>, String> {
|
||||
let node_id = self.node_id();
|
||||
|
||||
@@ -755,6 +756,7 @@ impl RoutingTable {
|
||||
Ok(out)
|
||||
}
|
||||
|
||||
#[instrument(level = "trace", skip(self), ret, err)]
|
||||
pub async fn find_node(
|
||||
&self,
|
||||
node_ref: NodeRef,
|
||||
@@ -773,26 +775,24 @@ impl RoutingTable {
|
||||
.await
|
||||
.map_err(map_to_string)
|
||||
.map_err(logthru_rtab!())?;
|
||||
log_rtab!(
|
||||
"find_self for at {:?} answered in {}ms",
|
||||
&node_ref,
|
||||
timestamp_to_secs(res.latency) * 1000.0f64
|
||||
);
|
||||
|
||||
// register nodes we'd found
|
||||
self.register_find_node_answer(res)
|
||||
}
|
||||
|
||||
#[instrument(level = "trace", skip(self), ret, err)]
|
||||
pub async fn find_self(&self, node_ref: NodeRef) -> Result<Vec<NodeRef>, String> {
|
||||
let node_id = self.node_id();
|
||||
self.find_node(node_ref, node_id).await
|
||||
}
|
||||
|
||||
#[instrument(level = "trace", skip(self), ret, err)]
|
||||
pub async fn find_target(&self, node_ref: NodeRef) -> Result<Vec<NodeRef>, String> {
|
||||
let node_id = node_ref.node_id();
|
||||
self.find_node(node_ref, node_id).await
|
||||
}
|
||||
|
||||
#[instrument(level = "trace", skip(self))]
|
||||
pub async fn reverse_find_node(&self, node_ref: NodeRef, wide: bool) {
|
||||
// Ask bootstrap node to 'find' our own node so we can get some more nodes near ourselves
|
||||
// and then contact those nodes to inform -them- that we exist
|
||||
@@ -827,6 +827,7 @@ impl RoutingTable {
|
||||
}
|
||||
|
||||
// Bootstrap lookup process
|
||||
#[instrument(level = "trace", skip(self), ret, err)]
|
||||
async fn resolve_bootstrap(
|
||||
&self,
|
||||
bootstrap: Vec<String>,
|
||||
@@ -990,6 +991,7 @@ impl RoutingTable {
|
||||
Ok(bsmap)
|
||||
}
|
||||
|
||||
#[instrument(level = "trace", skip(self), err)]
|
||||
async fn bootstrap_task_routine(self) -> Result<(), String> {
|
||||
let (bootstrap, bootstrap_nodes) = {
|
||||
let c = self.config.get();
|
||||
@@ -1092,9 +1094,8 @@ impl RoutingTable {
|
||||
|
||||
// Ask our remaining peers to give us more peers before we go
|
||||
// back to the bootstrap servers to keep us from bothering them too much
|
||||
#[instrument(level = "trace", skip(self), err)]
|
||||
async fn peer_minimum_refresh_task_routine(self) -> Result<(), String> {
|
||||
// log_rtab!("--- peer_minimum_refresh task");
|
||||
|
||||
// get list of all peers we know about, even the unreliable ones, and ask them to find nodes close to our node too
|
||||
let noderefs = {
|
||||
let mut inner = self.inner.lock();
|
||||
@@ -1125,6 +1126,7 @@ impl RoutingTable {
|
||||
|
||||
// Ping each node in the routing table if they need to be pinged
|
||||
// to determine their reliability
|
||||
#[instrument(level = "trace", skip(self), err)]
|
||||
async fn ping_validator_task_routine(self, _last_ts: u64, cur_ts: u64) -> Result<(), String> {
|
||||
// log_rtab!("--- ping_validator task");
|
||||
|
||||
@@ -1149,6 +1151,7 @@ impl RoutingTable {
|
||||
}
|
||||
|
||||
// Compute transfer statistics to determine how 'fast' a node is
|
||||
#[instrument(level = "trace", skip(self), err)]
|
||||
async fn rolling_transfers_task_routine(self, last_ts: u64, cur_ts: u64) -> Result<(), String> {
|
||||
// log_rtab!("--- rolling_transfers task");
|
||||
let inner = &mut *self.inner.lock();
|
||||
|
Reference in New Issue
Block a user