Developer Reference

  • 2020
  • 10/21/2020
  • Public Content
Contents

Adler32

Computes the Adler32 checksum for the source data buffer.

Syntax

IppStatus ippsAdler32_8u (const Ipp8u*
pSrc
, int
srcLen
, Ipp32u*
pAdler32
);
Include Files
ippdc.h
Domain Dependencies
Headers:
ippcore.h
,
ippvm.h
,
ipps.h
Libraries:
ippcore.lib
,
ippvm.lib
,
ipps.lib
Parameters
pSrc
Pointer to the source data buffer.
srcLen
Number of elements in the source data buffer.
pAdler32
Pointer to the checksum value.
Description
This function computes the checksum for
srcLen
elements of the source data buffer
pSrc
and stores it in the
pAdler32
. The checksum is computed using the Adler32 algorithm that is a modified version of the Fletcher algorithm [Flet82], [ITU224 ], [RFC1950].
You need to call the
Adler32
function twice: once with a NULL/zero length buffer to prime the checksum to 1, then call it again to compute the checksum on the buffer.
You can use this function to compute the accumulated value of the checksum for multiple buffers in the data stream by specifying as an input parameter the checksum value obtained in the preceding function call.
Return Values
ippStsNoErr
Indicates no error.
ippStsNullPtrErr
Indicates an error if the
pSrc
pointer is
NULL
.
ippStsSizeErr
Indicates an error if
srcLen
is less than or equal to 0.

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804