18b77a77e785f0e25b13016ed60770e521dc60e0bLogan/* 28b77a77e785f0e25b13016ed60770e521dc60e0bLogan * See "sha1.c" for author info. 38b77a77e785f0e25b13016ed60770e521dc60e0bLogan */ 48b77a77e785f0e25b13016ed60770e521dc60e0bLogan#ifndef _DALVIK_SHA1 58b77a77e785f0e25b13016ed60770e521dc60e0bLogan#define _DALVIK_SHA1 68b77a77e785f0e25b13016ed60770e521dc60e0bLogan 773775bb7859ad9a326de3508a579c553c4dec6ceJean-Luc Brouillet#include <stdint.h> 873775bb7859ad9a326de3508a579c553c4dec6ceJean-Luc Brouillet 98b77a77e785f0e25b13016ed60770e521dc60e0bLogantypedef struct { 1073775bb7859ad9a326de3508a579c553c4dec6ceJean-Luc Brouillet uint32_t state[5]; 1173775bb7859ad9a326de3508a579c553c4dec6ceJean-Luc Brouillet uint32_t count[2]; 1273775bb7859ad9a326de3508a579c553c4dec6ceJean-Luc Brouillet uint8_t buffer[64]; 138b77a77e785f0e25b13016ed60770e521dc60e0bLogan} SHA1_CTX; 148b77a77e785f0e25b13016ed60770e521dc60e0bLogan 158b77a77e785f0e25b13016ed60770e521dc60e0bLogan#define HASHSIZE 20 168b77a77e785f0e25b13016ed60770e521dc60e0bLogan 178b77a77e785f0e25b13016ed60770e521dc60e0bLogan#if defined(__cplusplus) 188b77a77e785f0e25b13016ed60770e521dc60e0bLoganextern "C" { 198b77a77e785f0e25b13016ed60770e521dc60e0bLogan#endif 208b77a77e785f0e25b13016ed60770e521dc60e0bLogan 218b77a77e785f0e25b13016ed60770e521dc60e0bLoganvoid SHA1Init(SHA1_CTX* context); 2273775bb7859ad9a326de3508a579c553c4dec6ceJean-Luc Brouilletvoid SHA1Update(SHA1_CTX* context, const uint8_t* data, uint32_t len); 2373775bb7859ad9a326de3508a579c553c4dec6ceJean-Luc Brouilletvoid SHA1Final(uint8_t digest[HASHSIZE], SHA1_CTX* context); 248b77a77e785f0e25b13016ed60770e521dc60e0bLogan 258b77a77e785f0e25b13016ed60770e521dc60e0bLogan#if defined(__cplusplus) 268b77a77e785f0e25b13016ed60770e521dc60e0bLogan} 278b77a77e785f0e25b13016ed60770e521dc60e0bLogan#endif 288b77a77e785f0e25b13016ed60770e521dc60e0bLogan 298b77a77e785f0e25b13016ed60770e521dc60e0bLogan#endif /*_DALVIK_SHA1*/ 30