42,7 → 42,7 |
|
#define CRC_DIVIDER_LE 0xEDB88320 |
|
uint32_t compute_crc32_le( uint32_t seed, uint8_t * data, int length ){ |
uint32_t compute_crc32_le( uint32_t seed, uint8_t * data, size_t length ){ |
int index; |
|
while( length >= 8 ){ |
71,7 → 71,7 |
return seed; |
} |
|
uint32_t compute_crc32_be( uint32_t seed, uint8_t * data, int length ){ |
uint32_t compute_crc32_be( uint32_t seed, uint8_t * data, size_t length ){ |
int index; |
|
while( length >= 8 ){ |
100,16 → 100,16 |
return seed; |
} |
|
uint32_t compute_checksum( uint32_t seed, uint8_t * data, int length ){ |
int index; |
uint32_t compute_checksum( uint32_t seed, uint8_t * data, size_t length ){ |
size_t index; |
|
// sum all the 16 bit fields |
for( index = 0; index < length - 1; index += 2 ){ |
for( index = 0; index + 1 < length; index += 2 ){ |
seed += ( data[ index ] << 8 ) + data[ index + 1 ]; |
} |
|
// last odd byte with zero padding |
if( index == length - 1 ){ |
if( index + 1 == length ){ |
seed += data[ index ] << 8; |
} |
|