summaryrefslogtreecommitdiffstats
path: root/src/transport/sim.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/transport/sim.rs')
-rw-r--r--src/transport/sim.rs10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/transport/sim.rs b/src/transport/sim.rs
index ce5977f..05160f8 100644
--- a/src/transport/sim.rs
+++ b/src/transport/sim.rs
@@ -26,6 +26,7 @@ use tracing::{debug, warn};
use super::mycelium::{decode_message, encode_message};
use super::{EncodedMessage, MessageHandler, MessageKind, ParsedMessage, Transport};
+use crate::locks::MutexExt;
use crate::testrand::Rng;
/// How one direction of a link behaves.
@@ -102,9 +103,7 @@ impl SimNet {
}
fn lock(&self) -> MutexGuard<'_, NetInner> {
- self.inner
- .lock()
- .unwrap_or_else(|poisoned| poisoned.into_inner())
+ self.inner.lock_or_recover()
}
/// A transport for a new node `id` on this net.
@@ -256,6 +255,11 @@ impl Transport for SimTransport {
&self.id
}
+ /// Any name will do.
+ fn is_peer_id(&self, id: &str) -> bool {
+ !id.is_empty()
+ }
+
/// A seed is a node ID; one no node has doesn't resolve (yet).
async fn resolve_seed(&self, seed: &str) -> Result<String> {
if self.net.is_known(seed) {