mirror of
https://github.com/octoleo/syncthing.git
synced 2025-01-09 09:50:30 +00:00
This fixes the change in #6674 where the weak hash became a deciding factor. Now we again just use it to accept a block, but don't take a negative as meaning the block is bad.
This commit is contained in:
parent
5f40879a75
commit
d57694dc04
@ -108,12 +108,12 @@ func Blocks(ctx context.Context, r io.Reader, blocksize int, sizehint int64, cou
|
||||
return blocks, nil
|
||||
}
|
||||
|
||||
// Validate quickly validates buf against the cryptohash hash (if len(hash)>0)
|
||||
// and the 32-bit hash weakHash (if not zero). It is satisfied if either hash
|
||||
// matches, or neither is given.
|
||||
// Validate quickly validates buf against the 32-bit weakHash, if not zero,
|
||||
// else against the cryptohash hash, if len(hash)>0. It is satisfied if
|
||||
// either hash matches or neither hash is given.
|
||||
func Validate(buf, hash []byte, weakHash uint32) bool {
|
||||
if weakHash != 0 {
|
||||
return adler32.Checksum(buf) == weakHash
|
||||
if weakHash != 0 && adler32.Checksum(buf) == weakHash {
|
||||
return true
|
||||
}
|
||||
|
||||
if len(hash) > 0 {
|
||||
|
Loading…
Reference in New Issue
Block a user