Skip to content
Snippets Groups Projects
Forked from trisquel / package-helpers
1777 commits behind the upstream repository.
rmd160.h 1.34 KiB
/*
 * Header file for implementation of RIPEMD-160.
 *
 * Copyright (C) 2014 Legimet <legimet.calc@gmail.com>
 *
 * Permission is hereby granted, without written agreement and without
 * license or royalty fees, to use, copy, modify, and distribute this
 * software and its documentation for any purpose, provided that the
 * above copyright notice and the following two paragraphs appear in
 * all copies of this software.
 *
 * IN NO EVENT SHALL I LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, SPECIAL,
 * INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF THIS
 * SOFTWARE AND ITS DOCUMENTATION, EVEN IF I HAVE BEEN ADVISED OF THE
 * POSSIBILITY OF SUCH DAMAGE.
 *
 * I SPECIFICALLY DISCLAIM ANY WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 * PURPOSE.  THE SOFTWARE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND
 * I HAVE NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES,
 * ENHANCEMENTS, OR MODIFICATIONS.
 */

#ifndef RMD160_H
#define RMD160_H

#ifdef __cplusplus
extern "C" {
#endif

#include <stdint.h>

typedef uint32_t dword;
typedef uint16_t word;
typedef uint8_t byte;

void ripemd160_MDinit(dword *MDbuf);

void ripemd160_compress(dword *MDbuf, dword *X);

void ripemd160_MDfinish(dword *MDbuf, byte *strptr, dword lswlen, dword mswlen);

#ifdef __cplusplus
}
#endif
#endif