Simplify hash a bit - dedup - deduplicating backup program
 (HTM) git clone git://bitreich.org/dedup/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/dedup/
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) Tags
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit e8031b23797e666b43f96906372d97e2da4f4d0a
 (DIR) parent 51e30cc320f67d76423856e7f0fc790431f9cf5f
 (HTM) Author: sin <sin@2f30.org>
       Date:   Fri, 22 Feb 2019 11:20:51 +0000
       
       Simplify hash a bit
       
       Diffstat:
         M hash.c                              |      15 ++++++---------
       
       1 file changed, 6 insertions(+), 9 deletions(-)
       ---
 (DIR) diff --git a/hash.c b/hash.c
       @@ -49,22 +49,19 @@ static uint32_t buz[] = {
        
        /* Buzhash: https://en.wikipedia.org/wiki/Rolling_hash#Cyclic_polynomial */
        uint32_t
       -buzh_init(uint8_t *buf, size_t size)
       +buzh_init(uint8_t *buf, size_t winsize)
        {
       -        size_t i;
                uint32_t fp;
       +        size_t i;
        
       -        if (!size)
       -                return 0;
       -
       -        for (i = size - 1, fp = 0; i > 0; i--, buf++)
       -                fp ^= ROTL(buz[*buf], i % 32);
       +        for (i = 1, fp = 0; i < winsize; i++, buf++)
       +                fp ^= ROTL(buz[*buf], (winsize - i) % 32);
        
                return fp ^ buz[*buf];
        }
        
        uint32_t
       -buzh_update(uint32_t fp, uint8_t in, uint8_t out, size_t size)
       +buzh_update(uint32_t fp, uint8_t in, uint8_t out, size_t winsize)
        {
       -        return ROTL(fp, 1) ^ ROTL(buz[out], size % 32) ^ buz[in];
       +        return ROTL(fp, 1) ^ ROTL(buz[out], winsize % 32) ^ buz[in];
        }