mirror of
https://github.com/aaru-dps/Aaru.Checksums.Native.git
synced 2025-12-16 11:14:29 +00:00
d4a607345e4ef21b585e072f526b1051873371c7
The changes ensure compatibility with compilers targeting ARMv7. 32-bit processors of architecture 8 and higher, or 64-bit processors running in 32-bit mode can have the CRC32 instructions. With this change we will query the processor instead of the compiler architecture.
Aaru.Checksums.Native
This repository contains the Aaru.Checksums.Native library for Aaru.
The purpose of this library is to provide checksums and hashing algorithms for Aaru.
No archiver processing code should fall here, those go in Aaru.Checksums.
To build you just need Docker on Linux and run build.sh, that will generate a NuGet package for use with Aaru.Checksums.
Currently implemented algorithms are:
- Adler-32
- CRC-16 (CCITT and IBM polynomials)
- CRC-32 (ISO polynomial)
- CRC-64 (ECMA polynomial)
- Fletcher-16
- Fletcher-32
- SpamSum
Each of these algorithms have a corresponding license, that can be found in their corresponding file header.
The resulting output of build.sh falls under the LGPL 2.1 license as stated in the LICENSE file.
Any new algorithm added should be under a license compatible with the LGPL 2.1 license to be accepted.
© 2021-2023 Natalia Portillo
Languages
C
80.1%
C++
15.9%
Shell
2.4%
CMake
1.6%