]> Sergey Matveev's repositories - btrtrc.git/commitdiff
Forget smart ban blocks after piece passes hash check
authorMatt Joiner <anacrolix@gmail.com>
Thu, 13 Jan 2022 03:04:54 +0000 (14:04 +1100)
committerMatt Joiner <anacrolix@gmail.com>
Sat, 22 Jan 2022 07:43:04 +0000 (18:43 +1100)
torrent.go

index 688ca3f80d8a5a241eb59b3a0efc583da1e9b59f..078dca22945e55c6e97116ee02f192d3cf702659 100644 (file)
@@ -2169,6 +2169,9 @@ func (t *Torrent) pieceHasher(index pieceIndex) {
                        log.Printf("smart banned %v for piece %v", peer, index)
                }
                t.dropBannedPeers()
+               for ri := t.pieceRequestIndexOffset(index); ri < t.pieceRequestIndexOffset(index+1); ri++ {
+                       t.smartBanCache.ForgetBlock(ri)
+               }
        }
        p.hashing = false
        t.pieceHashed(index, correct, copyErr)