41uint32_t
adler32_calc (
const unsigned char *
const data, uint32_t len )
48 debug ( 70,
"%p, %i", data, len );
49 const int MOD_ADLER = 65521;
50 uint32_t a = 1, b = 0;
54 for ( index = 0; index < len; ++index ) {
55 debug ( 80,
"%5i: %02x %02x %02x", index, data[index], a, b );
56 a = ( a + data[index] ) % MOD_ADLER;
57 b = ( b + a ) % MOD_ADLER;
60 return ( b << 16 ) | a;