#ifndef _SYS_MD4_H_
#define _SYS_MD4_H_
typedef struct MD4Context {
u_int32_t state[4];
u_int32_t count[2];
unsigned char buffer[64];
} MD4_CTX;
#include <sys/cdefs.h>
#ifndef _KERNEL
#ifndef MD4Init
#define MD4Init _libmd_MD4Init
#endif
#ifndef MD4Update
#define MD4Update _libmd_MD4Update
#endif
#ifndef MD4Pad
#define MD4Pad _libmd_MD4Pad
#endif
#ifndef MD4Final
#define MD4Final _libmd_MD4Final
#endif
#ifndef MD4End
#define MD4End _libmd_MD4End
#endif
#ifndef MD4Fd
#define MD4Fd _libmd_MD4Fd
#endif
#ifndef MD4FdChunk
#define MD4FdChunk _libmd_MD4FdChunk
#endif
#ifndef MD4File
#define MD4File _libmd_MD4File
#endif
#ifndef MD4FileChunk
#define MD4FileChunk _libmd_MD4FileChunk
#endif
#ifndef MD4Data
#define MD4Data _libmd_MD4Data
#endif
#endif
__BEGIN_DECLS
void MD4Init(MD4_CTX *);
void MD4Update(MD4_CTX *, const unsigned char *, unsigned int);
void MD4Pad(MD4_CTX *);
void MD4Final(unsigned char [__min_size(16)], MD4_CTX *);
#ifndef _KERNEL
char * MD4End(MD4_CTX *, char *);
char * MD4Fd(int, char *);
char * MD4FdChunk(int, char *, off_t, off_t);
char * MD4File(const char *, char *);
char * MD4FileChunk(const char *, char *, off_t, off_t);
char * MD4Data(const void *, unsigned int, char *);
#endif
__END_DECLS
#endif