sphlib

sph_tiger.h

Go to the documentation of this file.
00001 /* $Id: sph_tiger.h 216 2010-06-08 09:46:57Z tp $ */
00044 #ifndef SPH_TIGER_H__
00045 #define SPH_TIGER_H__
00046 
00047 #include <stddef.h>
00048 #include "sph_types.h"
00049 
00050 #if SPH_64
00051 
00055 #define SPH_SIZE_tiger   192
00056 
00060 #define SPH_SIZE_tiger2   192
00061 
00072 typedef struct {
00073 #ifndef DOXYGEN_IGNORE
00074         unsigned char buf[64];    /* first field, for alignment */
00075         sph_u64 val[3];
00076         sph_u64 count;
00077 #endif
00078 } sph_tiger_context;
00079 
00086 void sph_tiger_init(void *cc);
00087 
00096 void sph_tiger(void *cc, const void *data, size_t len);
00097 
00107 void sph_tiger_close(void *cc, void *dst);
00108 
00120 void sph_tiger_comp(const sph_u64 msg[8], sph_u64 val[3]);
00121 
00128 typedef sph_tiger_context sph_tiger2_context;
00129 
00130 #ifdef DOXYGEN_IGNORE
00131 
00138 void sph_tiger2_init(void *cc);
00139 #endif
00140 
00141 #ifndef DOXYGEN_IGNORE
00142 #define sph_tiger2_init   sph_tiger_init
00143 #endif
00144 
00145 #ifdef DOXYGEN_IGNORE
00146 
00154 void sph_tiger2(void *cc, const void *data, size_t len);
00155 #endif
00156 
00157 #ifndef DOXYGEN_IGNORE
00158 #define sph_tiger2   sph_tiger
00159 #endif
00160 
00172 void sph_tiger2_close(void *cc, void *dst);
00173 
00174 #ifdef DOXYGEN_IGNORE
00175 
00182 void sph_tiger2_comp(const sph_u64 msg[8], sph_u64 val[3]);
00183 #endif
00184 
00185 #ifndef DOXYGEN_IGNORE
00186 #define sph_tiger2_comp   sph_tiger_comp
00187 #endif
00188 
00189 #endif
00190 
00191 #endif