18b77a77e785f0e25b13016ed60770e521dc60e0bLogan/*
28b77a77e785f0e25b13016ed60770e521dc60e0bLogan * See "sha1.c" for author info.
38b77a77e785f0e25b13016ed60770e521dc60e0bLogan */
48b77a77e785f0e25b13016ed60770e521dc60e0bLogan#ifndef _DALVIK_SHA1
58b77a77e785f0e25b13016ed60770e521dc60e0bLogan#define _DALVIK_SHA1
68b77a77e785f0e25b13016ed60770e521dc60e0bLogan
78b77a77e785f0e25b13016ed60770e521dc60e0bLogantypedef struct {
88b77a77e785f0e25b13016ed60770e521dc60e0bLogan    unsigned long state[5];
98b77a77e785f0e25b13016ed60770e521dc60e0bLogan    unsigned long count[2];
108b77a77e785f0e25b13016ed60770e521dc60e0bLogan    unsigned char buffer[64];
118b77a77e785f0e25b13016ed60770e521dc60e0bLogan} SHA1_CTX;
128b77a77e785f0e25b13016ed60770e521dc60e0bLogan
138b77a77e785f0e25b13016ed60770e521dc60e0bLogan#define HASHSIZE 20
148b77a77e785f0e25b13016ed60770e521dc60e0bLogan
158b77a77e785f0e25b13016ed60770e521dc60e0bLogan#if defined(__cplusplus)
168b77a77e785f0e25b13016ed60770e521dc60e0bLoganextern "C" {
178b77a77e785f0e25b13016ed60770e521dc60e0bLogan#endif
188b77a77e785f0e25b13016ed60770e521dc60e0bLogan
198b77a77e785f0e25b13016ed60770e521dc60e0bLoganvoid SHA1Init(SHA1_CTX* context);
208b77a77e785f0e25b13016ed60770e521dc60e0bLoganvoid SHA1Update(SHA1_CTX* context, const unsigned char* data,
218b77a77e785f0e25b13016ed60770e521dc60e0bLogan    unsigned long len);
228b77a77e785f0e25b13016ed60770e521dc60e0bLoganvoid SHA1Final(unsigned char digest[HASHSIZE], SHA1_CTX* context);
238b77a77e785f0e25b13016ed60770e521dc60e0bLogan
248b77a77e785f0e25b13016ed60770e521dc60e0bLogan#if defined(__cplusplus)
258b77a77e785f0e25b13016ed60770e521dc60e0bLogan}
268b77a77e785f0e25b13016ed60770e521dc60e0bLogan#endif
278b77a77e785f0e25b13016ed60770e521dc60e0bLogan
288b77a77e785f0e25b13016ed60770e521dc60e0bLogan#endif /*_DALVIK_SHA1*/
29