summaryrefslogtreecommitdiffstats
path: root/src/swarm/sync.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/swarm/sync.rs')
-rw-r--r--src/swarm/sync.rs5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/swarm/sync.rs b/src/swarm/sync.rs
index 70ce28e..4e382ec 100644
--- a/src/swarm/sync.rs
+++ b/src/swarm/sync.rs
@@ -346,6 +346,11 @@ pub(crate) async fn handle_sync(
return Ok(());
}
};
+ if payload.0.len() > crate::swarm::blob::MAX_SYNC_MESSAGE {
+ // Not decoded: a node of this version sends a delta instead.
+ warn!(peer = %peer, bytes = payload.0.len(), "Dropping a sync message larger than any sender should send");
+ return Ok(());
+ }
state.stats.sync_received(payload.0.len());
let applied = {