libyggdrasil  v1.0.0
hash.h File Reference

Hash abstraction implementation for Midgard. More...

#include <c/common/types.h>
#include <stm32f7xx_hal.h>
Include dependency graph for hash.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

C_LINKAGE bool yggdrasil_HASH_Init (void)
 Hash initialization. More...
 
C_LINKAGE bool yggdrasil_HASH_Deinit (void)
 Hash deinitialization. More...
 
C_LINKAGE u8 yggdrasil_HASH_getCRC8 (void *data, size_t size, u8 initValue, u8 polynomial, u8 xorOut)
 Hardware accelerated CRC8 caluclation. More...
 
C_LINKAGE u16 yggdrasil_HASH_getCRC16 (void *data, size_t size, u16 initValue, u16 polynomial, u16 xorOut)
 Hardware accelerated CRC16 caluclation. More...
 
C_LINKAGE u32 yggdrasil_HASH_getCRC32 (void *data, size_t size, u32 initValue, u32 polynomial, u32 xorOut)
 Hardware accelerated CRC32 caluclation. More...
 

Detailed Description

Hash abstraction implementation for Midgard.

Author
Fabian Weber, Nikolaij Saegesser

Function Documentation

◆ yggdrasil_HASH_Deinit()

C_LINKAGE bool yggdrasil_HASH_Deinit ( void  )

Hash deinitialization.

Returns
Success

◆ yggdrasil_HASH_getCRC16()

C_LINKAGE u16 yggdrasil_HASH_getCRC16 ( void *  data,
size_t  size,
u16  initValue,
u16  polynomial,
u16  xorOut 
)

Hardware accelerated CRC16 caluclation.

Parameters
dataData to calculate CRC of
sizeSize of the data
initValueStart value
polynomialUsed polynomial
xorOutValue to xor result value with
Returns
CRC 16

◆ yggdrasil_HASH_getCRC32()

C_LINKAGE u32 yggdrasil_HASH_getCRC32 ( void *  data,
size_t  size,
u32  initValue,
u32  polynomial,
u32  xorOut 
)

Hardware accelerated CRC32 caluclation.

Parameters
dataData to calculate CRC of
sizeSize of the data
initValueStart value
polynomialUsed polynomial
xorOutValue to xor result value with
Returns
CRC 32

◆ yggdrasil_HASH_getCRC8()

C_LINKAGE u8 yggdrasil_HASH_getCRC8 ( void *  data,
size_t  size,
u8  initValue,
u8  polynomial,
u8  xorOut 
)

Hardware accelerated CRC8 caluclation.

Parameters
dataData to calculate CRC of
sizeSize of the data
initValueStart value
polynomialUsed polynomial
xorOutValue to xor result value with
Returns
CRC 8

◆ yggdrasil_HASH_Init()

C_LINKAGE bool yggdrasil_HASH_Init ( void  )

Hash initialization.

Returns
Success