aboutsummaryrefslogtreecommitdiffstats
path: root/src/swarm
diff options
context:
space:
mode:
Diffstat (limited to 'src/swarm')
-rw-r--r--src/swarm/sync.rs8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/swarm/sync.rs b/src/swarm/sync.rs
index f5d6bfb..9f928ad 100644
--- a/src/swarm/sync.rs
+++ b/src/swarm/sync.rs
@@ -36,6 +36,14 @@ async fn deliver_sync_to_peer(state: &AppState, peer: &str) -> Result<()> {
trace!("Peer was forgotten; skipping sync");
return Ok(());
};
+ {
+ use crate::locks::MutexExt;
+ if state.screening.lock_or_recover().refusing(peer).is_some() {
+ // All it commits builds on what we refused (`access::screen`).
+ trace!("Refusing the peer as a whole; not syncing with it");
+ return Ok(());
+ }
+ }
let we_ready = state.is_ready().await;