sphlib
|
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