#include <nitro/math/checksum.h>
typedef u8 MATHChecksum8Context;
typedef u16 MATHChecksum16Context;
Do not access the elements of this structure directly.
The context structure used to calculate checksums. You must initialize the structure with MATH_Checksum*Init
and then use MATH_Checksum*Update
to provide input data and MATH_Checksum*GetHash
to obtain the hash value. 8-bit Checksum is an algorithm to find the 8-bit hash value. It computes the one's complement of the one's complement sum in 8-bit units. 16-bit Checksum is an algorithm to find the 16-bit hash value. It computes the one's complement of the one's complement sum in 16-bit units. 16-bit Checksum returns the same value as IP Checksum or Internet Checksum, which are used with IP, UDP and TCP protocols. For details on Internet Checksum, see RFC (Request For Comments) 1071, which is published by IETF (The Internet Engineering Task Force).
MATH_Checksum*Init
, MATH_Checksum*Update
, MATH_Checksum*GetHash
04/12/2005 Initial version.