summaryrefslogtreecommitdiffstats
path: root/src/swarm/peer/handshake.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/swarm/peer/handshake.rs')
-rw-r--r--src/swarm/peer/handshake.rs9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/swarm/peer/handshake.rs b/src/swarm/peer/handshake.rs
index 4a7f451..1183db1 100644
--- a/src/swarm/peer/handshake.rs
+++ b/src/swarm/peer/handshake.rs
@@ -160,7 +160,14 @@ async fn transmit_hello(state: &AppState, peer: &str) -> Result<()> {
}
}
- result.context("Sending HELLO")
+ match result {
+ // The first HELLO to a peer known only from hints: expected, and retried.
+ Err(error) if transport::identity::is_not_proven(&error) => {
+ debug!(peer = %peer, "HELLO waits until the peer proves where it is; will retry");
+ Ok(())
+ }
+ result => result.context("Sending HELLO"),
+ }
}
pub(super) async fn ensure_handshake(state: &AppState, peer: &str) {