avoid using libc's internal sys/cdefs.h
[project/make_ext4fs.git] / sha1.h
1 /*      $NetBSD: sha1.h,v 1.13 2005/12/26 18:41:36 perry Exp $  */
2
3 /*
4  * SHA-1 in C
5  * By Steve Reid <steve@edmweb.com>
6  * 100% Public Domain
7  */
8
9 #ifndef _SYS_SHA1_H_
10 #define _SYS_SHA1_H_
11
12 #include <sys/types.h>
13 #include <stdint.h>
14
15 #define SHA1_DIGEST_LENGTH              20
16 #define SHA1_DIGEST_STRING_LENGTH       41
17
18 typedef struct {
19         uint32_t state[5];
20         uint32_t count[2];
21         u_char buffer[64];
22 } SHA1_CTX;
23
24 #ifdef __cplusplus
25 extern "C" {
26 #endif
27 void    SHA1Transform(uint32_t[5], const u_char[64]);
28 void    SHA1Init(SHA1_CTX *);
29 void    SHA1Update(SHA1_CTX *, const u_char *, u_int);
30 void    SHA1Final(u_char[SHA1_DIGEST_LENGTH], SHA1_CTX *);
31 #ifdef __cplusplus
32 }
33 #endif
34
35 #endif /* _SYS_SHA1_H_ */