1 //==========================================================================
3 // include/netinet/rmd160.h
7 //==========================================================================
8 //####BSDCOPYRIGHTBEGIN####
10 // -------------------------------------------
12 // Portions of this software may have been derived from OpenBSD or other sources,
13 // and are covered by the appropriate copyright disclaimers included herein.
15 // -------------------------------------------
17 //####BSDCOPYRIGHTEND####
18 //==========================================================================
19 //#####DESCRIPTIONBEGIN####
22 // Contributors: gthomas
28 //####DESCRIPTIONEND####
30 //==========================================================================
33 /* $OpenBSD: ip_rmd160.h,v 1.3 1999/02/17 18:10:08 deraadt Exp $ */
38 * CONTENTS: Header file for a sample C-implementation of the
39 * RIPEMD-160 hash-function.
40 * TARGET: any computer with an ANSI C compiler
42 * AUTHOR: Antoon Bosselaers, ESAT-COSIC
46 * Copyright (c) Katholieke Universiteit Leuven
47 * 1996, All Rights Reserved
51 #ifndef _NETINET_RMD160_H /* make sure this file is read only once */
52 #define _NETINET_RMD160_H
55 u_int32_t state[5]; /* state (ABCDE) */
56 u_int32_t length[2]; /* number of bits */
57 u_char bbuffer[64]; /* overflow buffer */
58 u_int32_t buflen; /* number of chars in bbuffer */
61 void RMD160Init __P((RMD160_CTX *context));
62 void RMD160Transform __P((u_int32_t state[5], const u_int32_t block[16]));
63 void RMD160Update __P((RMD160_CTX *context, const u_char *data, u_int nbytes));
64 void RMD160Final __P((u_char digest[20], RMD160_CTX *context));
65 char *RMD160End __P((RMD160_CTX *, char *));
66 char *RMD160File __P((char *, char *));
67 char *RMD160Data __P((const u_char *, size_t, char *));
69 #endif /* _NETINET_RMD160_H */