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 More...
 
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 More...
 
uint32_t adler32_sum (const void *data, uint64_t size, uint32_t init)
 calculates adler32 sum More...
 

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