diff options
Diffstat (limited to 'C/7zCrc.h')
-rwxr-xr-x | C/7zCrc.h | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/C/7zCrc.h b/C/7zCrc.h new file mode 100755 index 00000000..370b2a0f --- /dev/null +++ b/C/7zCrc.h @@ -0,0 +1,31 @@ +/* 7zCrc.h */ + +#ifndef __7Z_CRC_H +#define __7Z_CRC_H + +#include <stddef.h> + +#include "Types.h" + +extern UInt32 g_CrcTable[256]; + +// #define CRC_GENERATE_TABLE + +#ifdef CRC_GENERATE_TABLE +void CrcGenerateTable(); +#else +#define CrcGenerateTable() +#endif + +void CrcInit(UInt32 *crc); +UInt32 CrcGetDigest(UInt32 *crc); +void CrcUpdateByte(UInt32 *crc, Byte v); +void CrcUpdateUInt16(UInt32 *crc, UInt16 v); +void CrcUpdateUInt32(UInt32 *crc, UInt32 v); +void CrcUpdateUInt64(UInt32 *crc, UInt64 v); +void CrcUpdate(UInt32 *crc, const void *data, size_t size); + +UInt32 CrcCalculateDigest(const void *data, size_t size); +int CrcVerifyDigest(UInt32 digest, const void *data, size_t size); + +#endif |