xref: /minix3/include/md2.h (revision 2fe8fb192fe7e8720e3e7a77f928da545e872a6a)
1*2fe8fb19SBen Gras /*	$NetBSD: md2.h,v 1.6 2005/12/26 19:01:47 perry Exp $	*/
2*2fe8fb19SBen Gras 
3*2fe8fb19SBen Gras #ifndef _MD2_H_
4*2fe8fb19SBen Gras #define _MD2_H_
5*2fe8fb19SBen Gras 
6*2fe8fb19SBen Gras #include <sys/cdefs.h>
7*2fe8fb19SBen Gras #include <sys/types.h>
8*2fe8fb19SBen Gras 
9*2fe8fb19SBen Gras #define	MD2_DIGEST_LENGTH		16
10*2fe8fb19SBen Gras #define	MD2_DIGEST_STRING_LENGTH	33
11*2fe8fb19SBen Gras 
12*2fe8fb19SBen Gras /* MD2 context. */
13*2fe8fb19SBen Gras typedef struct MD2Context {
14*2fe8fb19SBen Gras 	uint32_t i;
15*2fe8fb19SBen Gras 	unsigned char C[16];		/* checksum */
16*2fe8fb19SBen Gras 	unsigned char X[48];		/* input buffer */
17*2fe8fb19SBen Gras } MD2_CTX;
18*2fe8fb19SBen Gras 
19*2fe8fb19SBen Gras __BEGIN_DECLS
20*2fe8fb19SBen Gras void	MD2Init(MD2_CTX *);
21*2fe8fb19SBen Gras void	MD2Update(MD2_CTX *, const unsigned char *, unsigned int);
22*2fe8fb19SBen Gras void	MD2Final(unsigned char[16], MD2_CTX *);
23*2fe8fb19SBen Gras char	*MD2End(MD2_CTX *, char *);
24*2fe8fb19SBen Gras char	*MD2File(const char *, char *);
25*2fe8fb19SBen Gras char	*MD2FileChunk(const char *, char *, off_t, off_t);
26*2fe8fb19SBen Gras char	*MD2Data(const unsigned char *, size_t, char *);
27*2fe8fb19SBen Gras __END_DECLS
28*2fe8fb19SBen Gras 
29*2fe8fb19SBen Gras #endif /* _MD2_H_ */
30