From f1c1fb85ffb9f799f6740650565b42b868f5d3aa Mon Sep 17 00:00:00 2001 From: Matthias Seitz Date: Mon, 26 Dec 2022 13:00:01 +0100 Subject: [PATCH] fix(net): add no response to backoff check (#610) --- crates/net/network/src/error.rs | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/crates/net/network/src/error.rs b/crates/net/network/src/error.rs index 403aaef59f..da0bd0d87c 100644 --- a/crates/net/network/src/error.rs +++ b/crates/net/network/src/error.rs @@ -89,7 +89,13 @@ impl SessionError for EthStreamError { } fn should_backoff(&self) -> bool { - self.as_disconnected() + matches!( + self, + EthStreamError::P2PStreamError(P2PStreamError::HandshakeError( + P2PHandshakeError::NoResponse + )) + ) || self + .as_disconnected() .map(|reason| { matches!( reason, @@ -146,5 +152,10 @@ mod tests { assert_eq!(err.as_disconnected(), Some(DisconnectReason::TooManyPeers)); assert!(err.should_backoff()); + + let err = EthStreamError::P2PStreamError(P2PStreamError::HandshakeError( + P2PHandshakeError::NoResponse, + )); + assert!(err.should_backoff()); } }