18ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Project/* sha1.h */
28ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Project
38ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Project/* If OpenSSL is in use, then use that version of SHA-1 */
48ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Project#ifdef OPENSSL
58ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Project#include <t_sha.h>
68ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Project#define __SHA1_INCLUDE_
78ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Project#endif
88ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Project
98ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Project#ifndef __SHA1_INCLUDE_
108ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Project
118ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Project#ifndef SHA1_SIGNATURE_SIZE
128ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Project#ifdef SHA_DIGESTSIZE
138ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Project#define SHA1_SIGNATURE_SIZE SHA_DIGESTSIZE
148ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Project#else
158ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Project#define SHA1_SIGNATURE_SIZE 20
168ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Project#endif
178ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Project#endif
188ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Project
198ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Projecttypedef struct {
208ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Project    u_int32_t state[5];
218ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Project    u_int32_t count[2];
228ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Project    unsigned char buffer[64];
238ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Project} SHA1_CTX;
248ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Project
258ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Projectextern void SHA1_Init(SHA1_CTX *);
268ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Projectextern void SHA1_Update(SHA1_CTX *, const unsigned char *, unsigned int);
278ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Projectextern void SHA1_Final(unsigned char[SHA1_SIGNATURE_SIZE], SHA1_CTX *);
288ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Project
298ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Project#define __SHA1_INCLUDE_
308ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Project#endif /* __SHA1_INCLUDE_ */
318ad0dd2a5c5f23cd210aedba72a43e48026e7436The Android Open Source Project
32