openldap/include/lutil_md5.h
Kurt Zeilenga 8c5868b500 Add basic support for MD5 and SHA1 passwords.
SHA1 support is contributed by Daniel J. Gregor <dj@gregor.com>
	MD5 support is contributed by me <kurt@OpenLDAP.org>
	Uses public domain MD5 routines
	Uses ISC/IBM freely redistributable Base64 routines
	SHA1 support requires external SHA1 routines
1998-09-02 21:31:35 +00:00

31 lines
941 B
C

/* See md5.c for explanation and copyright information. */
#ifndef LDAP_MD5_H
#define LDAP_MD5_H
/* Unlike previous versions of this code, uint32 need not be exactly
32 bits, merely 32 bits or more. Choosing a data type which is 32
bits instead of 64 is not important; speed is considerably more
important. ANSI guarantees that "unsigned long" will be big enough,
and always using it seems to have few disadvantages. */
typedef unsigned long uint32;
struct MD5Context {
uint32 buf[4];
uint32 bits[2];
unsigned char in[64];
};
void MD5Init(struct MD5Context *context);
void MD5Update(struct MD5Context *context, unsigned char const *buf, unsigned len);
void MD5Final(unsigned char digest[16], struct MD5Context *context);
void MD5Transform(uint32 buf[4], const unsigned char in[64]);
/*
* This is needed to make RSAREF happy on some MS-DOS compilers.
*/
typedef struct MD5Context MD5_CTX;
#endif /* !LDAP_MD5_H */