Turnstone Operating System
Loading...
Searching...
No Matches
crc.64.c File Reference

CRC32 implementation. More...

#include <crc.h>

Functions

 MODULE ("turnstone.lib")
 
void crc32_init_table (void)
 initialize crc32 tables for fast calculation
 
uint32_t crc32_sum (const void *p, uint32_t bytelength, uint32_t init)
 calculates crc32 sum
 
static uint32_t crc32c_u8 (uint32_t crc, uint8_t data)
 
static uint32_t crc32c_u32 (uint32_t crc, uint32_t data)
 
uint32_t crc32c_sum (const void *data, uint64_t size, uint32_t init)
 calculates crc32c sum
 
uint32_t adler32_sum (const void *data, uint64_t size, uint32_t init)
 calculates adler32 sum
 

Variables

uint32_t crc32_table [256] = {}
 

Detailed Description

CRC32 implementation.

This work is licensed under TURNSTONE OS Public License. Please read and understand latest version of Licence.

Function Documentation

◆ adler32_sum()

uint32_t adler32_sum ( const void * data,
uint64_t size,
uint32_t init )

calculates adler32 sum

Parameters
[in]datainput data
[in]sizeinput length
[in]initseed/previous sum
Returns
crc32 sum

◆ crc32_sum()

uint32_t crc32_sum ( const void * p,
uint32_t bytelength,
uint32_t init )

calculates crc32 sum

Parameters
[in]pinput data
[in]bytelengthinput length
[in]initCRC32_SEED or previous sum
Returns
pre crc32 sum, for finishing it should be xor'ed with CRC32_SEED

◆ crc32c_sum()

uint32_t crc32c_sum ( const void * data,
uint64_t size,
uint32_t init )

calculates crc32c sum

Parameters
[in]datainput data
[in]sizeinput length
[in]initCRC32_SEED or previous sum
Returns
pre crc32 sum, for finishing it should be xor'ed with CRC32_SEED