diff options
Diffstat (limited to 'src/md5.h')
-rw-r--r-- | src/md5.h | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/src/md5.h b/src/md5.h new file mode 100644 index 0000000..9926e63 --- /dev/null +++ b/src/md5.h @@ -0,0 +1,50 @@ +/* + * This is the header file for the MD5 message-digest algorithm. + * The algorithm is due to Ron Rivest. This code was + * written by Colin Plumb in 1993, no copyright is claimed. + * This code is in the public domain; do with it what you wish. + * + * Equivalent code is available from RSA Data Security, Inc. + * This code has been tested against that, and is equivalent, + * except that you don't need to include two pages of legalese + * with every copy. + * + * To compute the message digest of a chunk of bytes, declare an + * MD5Context structure, pass it to MD5Init, call MD5Update as + * needed on buffers full of bytes, and then call MD5Final, which + * will fill a supplied 16-byte array with the digest. + * + * Changed so as no longer to depend on Colin Plumb's `usual.h' + * header definitions; now uses stuff from dpkg's config.h + * - Ian Jackson <ijackson@nyx.cs.du.edu>. + * Still in the public domain. + */ + +#ifdef __cplusplus +extern "C" { +#endif + +#ifndef MD5_H +#define MD5_H + +#define md5byte unsigned char +#define MD5_DIGEST_LENGTH 16 + +struct MD5Context { + unsigned int buf[4]; + unsigned int bytes[2]; + unsigned int in[16]; +}; + +typedef struct MD5Context MD5_CTX; + +void MD5Init(struct MD5Context *context); +void MD5Update(struct MD5Context *context, const md5byte* buf, unsigned len); +void MD5Final(unsigned char digest[16], struct MD5Context *context); +void MD5Transform(unsigned int buf[4], unsigned int const in[16]); + +#ifdef __cplusplus +} +#endif + +#endif /* !MD5_H */ |