relay fixes
This commit is contained in:
@@ -369,8 +369,8 @@ impl RouteSpecStore {
|
||||
}
|
||||
let opt_relay = match node.locked_mut(rti).relay(RoutingDomain::PublicInternet) {
|
||||
Ok(r) => r,
|
||||
Err(e) => {
|
||||
log_rtab!(error "failed to get relay for route node: {}", e);
|
||||
Err(_) => {
|
||||
// Not selecting a relay through ourselves
|
||||
return None;
|
||||
}
|
||||
};
|
||||
|
@@ -15,6 +15,7 @@ impl RoutingTable {
|
||||
};
|
||||
let own_node_info = own_peer_info.signed_node_info().node_info();
|
||||
let network_class = own_node_info.network_class();
|
||||
let relay_node_filter = self.make_public_internet_relay_node_filter();
|
||||
|
||||
// Get routing domain editor
|
||||
let mut editor = self.edit_routing_domain(RoutingDomain::PublicInternet);
|
||||
@@ -28,7 +29,18 @@ impl RoutingTable {
|
||||
info!("Relay node died, dropping relay {}", relay_node);
|
||||
editor.clear_relay_node();
|
||||
false
|
||||
} else if !own_node_info.requires_relay() {
|
||||
}
|
||||
// Relay node no longer can relay
|
||||
else if relay_node.operate(|_rti, e| !relay_node_filter(e)) {
|
||||
info!(
|
||||
"Relay node can no longer relay, dropping relay {}",
|
||||
relay_node
|
||||
);
|
||||
editor.clear_relay_node();
|
||||
false
|
||||
}
|
||||
// Relay node is no longer required
|
||||
else if !own_node_info.requires_relay() {
|
||||
info!(
|
||||
"Relay node no longer required, dropping relay {}",
|
||||
relay_node
|
||||
|
Reference in New Issue
Block a user