00001
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef MBEDTLS_RIPEMD160_H
00025 #define MBEDTLS_RIPEMD160_H
00026
00027 #if !defined(MBEDTLS_CONFIG_FILE)
00028 #include "config.h"
00029 #else
00030 #include MBEDTLS_CONFIG_FILE
00031 #endif
00032
00033 #include <stddef.h>
00034 #include <stdint.h>
00035
00036 #define MBEDTLS_ERR_RIPEMD160_HW_ACCEL_FAILED -0x0031
00038 #if !defined(MBEDTLS_RIPEMD160_ALT)
00039
00040
00041
00042 #ifdef __cplusplus
00043 extern "C" {
00044 #endif
00045
00049 typedef struct
00050 {
00051 uint32_t total[2];
00052 uint32_t state[5];
00053 unsigned char buffer[64];
00054 }
00055 mbedtls_ripemd160_context;
00056
00062 void mbedtls_ripemd160_init( mbedtls_ripemd160_context *ctx );
00063
00069 void mbedtls_ripemd160_free( mbedtls_ripemd160_context *ctx );
00070
00077 void mbedtls_ripemd160_clone( mbedtls_ripemd160_context *dst,
00078 const mbedtls_ripemd160_context *src );
00079
00087 int mbedtls_ripemd160_starts_ret( mbedtls_ripemd160_context *ctx );
00088
00098 int mbedtls_ripemd160_update_ret( mbedtls_ripemd160_context *ctx,
00099 const unsigned char *input,
00100 size_t ilen );
00101
00110 int mbedtls_ripemd160_finish_ret( mbedtls_ripemd160_context *ctx,
00111 unsigned char output[20] );
00112
00121 int mbedtls_internal_ripemd160_process( mbedtls_ripemd160_context *ctx,
00122 const unsigned char data[64] );
00123
00124 #if !defined(MBEDTLS_DEPRECATED_REMOVED)
00125 #if defined(MBEDTLS_DEPRECATED_WARNING)
00126 #define MBEDTLS_DEPRECATED __attribute__((deprecated))
00127 #else
00128 #define MBEDTLS_DEPRECATED
00129 #endif
00130
00137 MBEDTLS_DEPRECATED void mbedtls_ripemd160_starts(
00138 mbedtls_ripemd160_context *ctx );
00139
00149 MBEDTLS_DEPRECATED void mbedtls_ripemd160_update(
00150 mbedtls_ripemd160_context *ctx,
00151 const unsigned char *input,
00152 size_t ilen );
00153
00162 MBEDTLS_DEPRECATED void mbedtls_ripemd160_finish(
00163 mbedtls_ripemd160_context *ctx,
00164 unsigned char output[20] );
00165
00174 MBEDTLS_DEPRECATED void mbedtls_ripemd160_process(
00175 mbedtls_ripemd160_context *ctx,
00176 const unsigned char data[64] );
00177
00178 #undef MBEDTLS_DEPRECATED
00179 #endif
00180
00181 #ifdef __cplusplus
00182 }
00183 #endif
00184
00185 #else
00186 #include "ripemd160_alt.h"
00187 #endif
00188
00189 #ifdef __cplusplus
00190 extern "C" {
00191 #endif
00192
00202 int mbedtls_ripemd160_ret( const unsigned char *input,
00203 size_t ilen,
00204 unsigned char output[20] );
00205
00206 #if !defined(MBEDTLS_DEPRECATED_REMOVED)
00207 #if defined(MBEDTLS_DEPRECATED_WARNING)
00208 #define MBEDTLS_DEPRECATED __attribute__((deprecated))
00209 #else
00210 #define MBEDTLS_DEPRECATED
00211 #endif
00212
00221 MBEDTLS_DEPRECATED void mbedtls_ripemd160( const unsigned char *input,
00222 size_t ilen,
00223 unsigned char output[20] );
00224
00225 #undef MBEDTLS_DEPRECATED
00226 #endif
00227
00233 int mbedtls_ripemd160_self_test( int verbose );
00234
00235 #ifdef __cplusplus
00236 }
00237 #endif
00238
00239 #endif