.. _hashinit: HashInit ======== Initializes user-supplied memory as IppsHashState or IppsHashState_rmf context for future use. Syntax ------ IppStatus ippsHashInit(IppsHashState\* pCtx, IppHashAlgId hashAlg); IppStatus ippsHashInit_rmf(IppsHashState_rmf\* pCtx, IppsHashMethod\* pMethod); Include Files ------------- ``ippcp.h`` Parameters ---------- .. list-table:: :header-rows: 0 * - pCtx - Pointer to the IppsHashState or IppsHashState_rmf context being intialized. * - hashAlg - Identifier of the hash algorithm. * - pMethod - Pointer to the hash method. Description ----------- The function initializes the memory pointed by pCtx as IppsHashState or IppsHashState_rmf context. The hashAlg and pMethod parameters define the hash algorithm to be used in subsequent calls to `HashUpdate `__ , `HashFinal `__, or `HashGetTag `__ functions. The hashAlg parameter can take one of the values listed in table `Supported Hash Algorithms `__. To get a value for the pMethod parameter, call one of the `HashMethod `__ functions. .. note:: This function has a *reduced memory footprint* version. To learn more, see `Reduced Memory Footprint Functions `__. Return Values ------------- .. list-table:: :header-rows: 0 * - ippStsNoErr - Indicates no error. Any other value indicates an error or warning. * - ippStsNullPtrErr - Indicates an error condition if any of the specified pointers is NULL. * - ippStsNotSupportedModeErr - Indicates an error condition if the hashAlg parameter does not match any value of IppHashAlg listed in table `Supported Hash Algorithms `__. .. rubric:: Related Information :ref:`data-security-considerations`