Home | History | Annotate | Download | only in src
      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 (at) 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 #ifdef USE_MINGW
     16 typedef unsigned char u_char;
     17 typedef unsigned int uint32_t;
     18 typedef unsigned int u_int32_t;
     19 typedef unsigned int u_int;
     20 
     21 #define __BEGIN_DECLS
     22 #define __END_DECLS
     23 #else
     24 #include <sys/cdefs.h>
     25 #endif
     26 
     27 #define SHA1_DIGEST_LENGTH		20
     28 #define SHA1_DIGEST_STRING_LENGTH	41
     29 
     30 typedef struct {
     31 	uint32_t state[5];
     32 	uint32_t count[2];
     33 	u_char buffer[64];
     34 } SHA1_CTX;
     35 
     36 __BEGIN_DECLS
     37 void	SHA1Transform(uint32_t[5], const u_char[64]);
     38 void	SHA1Init(SHA1_CTX *);
     39 void	SHA1Update(SHA1_CTX *, const u_char *, u_int);
     40 void	SHA1Final(u_char[SHA1_DIGEST_LENGTH], SHA1_CTX *);
     41 __END_DECLS
     42 
     43 #endif /* _SYS_SHA1_H_ */
     44