diff options
Diffstat (limited to 'src/swarm/sync.rs')
| -rw-r--r-- | src/swarm/sync.rs | 5 |
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 = { |
