00001
00002
00003
00004 #ifndef _MD5_H_
00005 #define _MD5_H_
00006
00007 #include <sys/types.h>
00008
00009 #ifdef __cplusplus
00010 extern "C" {
00011 #endif
00012
00013 #define MD5_HASHBYTES 16
00014
00015 typedef struct MD5Context {
00016 u_int32_t buf[4];
00017 u_int32_t bits[2];
00018 unsigned char in[64];
00019 } MD5_CTX;
00020
00021 extern void MD5_Init(MD5_CTX *context);
00022 extern void MD5_Update(MD5_CTX *context, unsigned char const *buf,
00023 unsigned len);
00024 extern void MD5_Final(unsigned char digest[MD5_HASHBYTES], MD5_CTX *context);
00025 extern void MD5Transform(u_int32_t buf[4], u_int32_t const in[16]);
00026 extern char * MD5End(MD5_CTX *, char *);
00027 extern char * MD5File(const char *, char *);
00028 extern char * MD5Data (const unsigned char *, unsigned int, char *);
00029
00030 #ifdef __cplusplus
00031 }
00032 #endif
00033
00034 #endif
00035