codekingpro/portable-devtools
115k
1/*2 * Copyright 1995-2020 The OpenSSL Project Authors. All Rights Reserved.3 *4 * Licensed under the Apache License 2.0 (the "License"). You may not use5 * this file except in compliance with the License. You can obtain a copy6 * in the file LICENSE in the source distribution or at7 * https://www.openssl.org/source/license.html8 */9 10#ifndef OPENSSL_RIPEMD_H11# define OPENSSL_RIPEMD_H12# pragma once13 14# include <openssl/macros.h>15# ifndef OPENSSL_NO_DEPRECATED_3_016# define HEADER_RIPEMD_H17# endif18 19# include <openssl/opensslconf.h>20 21# ifndef OPENSSL_NO_RMD16022# include <openssl/e_os2.h>23# include <stddef.h>24 25# define RIPEMD160_DIGEST_LENGTH 2026 27# ifdef __cplusplus28extern "C" {29# endif30# if !defined(OPENSSL_NO_DEPRECATED_3_0)31 32# define RIPEMD160_LONG unsigned int33 34# define RIPEMD160_CBLOCK 6435# define RIPEMD160_LBLOCK (RIPEMD160_CBLOCK/4)36 37typedef struct RIPEMD160state_st {38 RIPEMD160_LONG A, B, C, D, E;39 RIPEMD160_LONG Nl, Nh;40 RIPEMD160_LONG data[RIPEMD160_LBLOCK];41 unsigned int num;42} RIPEMD160_CTX;43# endif44# ifndef OPENSSL_NO_DEPRECATED_3_045OSSL_DEPRECATEDIN_3_0 int RIPEMD160_Init(RIPEMD160_CTX *c);46OSSL_DEPRECATEDIN_3_0 int RIPEMD160_Update(RIPEMD160_CTX *c, const void *data,47 size_t len);48OSSL_DEPRECATEDIN_3_0 int RIPEMD160_Final(unsigned char *md, RIPEMD160_CTX *c);49OSSL_DEPRECATEDIN_3_0 unsigned char *RIPEMD160(const unsigned char *d, size_t n,50 unsigned char *md);51OSSL_DEPRECATEDIN_3_0 void RIPEMD160_Transform(RIPEMD160_CTX *c,52 const unsigned char *b);53# endif54 55# ifdef __cplusplus56}57# endif58# endif59#endif60 