diff --git a/crates/librqbit/src/torrent_state/live/mod.rs b/crates/librqbit/src/torrent_state/live/mod.rs index bd080b6..2f74e00 100644 --- a/crates/librqbit/src/torrent_state/live/mod.rs +++ b/crates/librqbit/src/torrent_state/live/mod.rs @@ -1397,11 +1397,15 @@ impl PeerHandler { self.state.maybe_transmit_haves(chunk_info.piece_index); } false => { - warn!("checksum for piece={} did not validate", index,); + warn!( + "checksum for piece={} did not validate. disconecting peer.", + index + ); self.state .lock_write("mark_piece_broken") .get_chunks_mut()? .mark_piece_broken_if_not_have(chunk_info.piece_index); + anyhow::bail!("i am probably a bogus peer. dying.") } }; Ok::<_, anyhow::Error>(())