1/*
2 * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved.
3 *
4 * Licensed under the Apache License 2.0 (the "License").  You may not use
5 * this file except in compliance with the License.  You can obtain a copy
6 * in the file LICENSE in the source distribution or at
7 * https://www.openssl.org/source/license.html
8 */
9
10#include <stdio.h>
11#include "internal/cryptlib.h"
12#include <openssl/evp.h>
13#include "crypto/evp.h"
14#include <openssl/pkcs12.h>
15#include <openssl/objects.h>
16
17void openssl_add_all_digests_int(void)
18{
19#ifndef OPENSSL_NO_MD4
20    EVP_add_digest(EVP_md4());
21#endif
22#ifndef OPENSSL_NO_MD5
23    EVP_add_digest(EVP_md5());
24    EVP_add_digest_alias(SN_md5, "ssl3-md5");
25    EVP_add_digest(EVP_md5_sha1());
26#endif
27    EVP_add_digest(EVP_sha1());
28    EVP_add_digest_alias(SN_sha1, "ssl3-sha1");
29    EVP_add_digest_alias(SN_sha1WithRSAEncryption, SN_sha1WithRSA);
30#if !defined(OPENSSL_NO_MDC2) && !defined(OPENSSL_NO_DES)
31    EVP_add_digest(EVP_mdc2());
32#endif
33#ifndef OPENSSL_NO_RMD160
34    EVP_add_digest(EVP_ripemd160());
35    EVP_add_digest_alias(SN_ripemd160, "ripemd");
36    EVP_add_digest_alias(SN_ripemd160, "rmd160");
37#endif
38    EVP_add_digest(EVP_sha224());
39    EVP_add_digest(EVP_sha256());
40    EVP_add_digest(EVP_sha384());
41    EVP_add_digest(EVP_sha512());
42    EVP_add_digest(EVP_sha512_224());
43    EVP_add_digest(EVP_sha512_256());
44#ifndef OPENSSL_NO_WHIRLPOOL
45    EVP_add_digest(EVP_whirlpool());
46#endif
47#ifndef OPENSSL_NO_SM3
48    EVP_add_digest(EVP_sm3());
49#endif
50#ifndef OPENSSL_NO_BLAKE2
51    EVP_add_digest(EVP_blake2b512());
52    EVP_add_digest(EVP_blake2s256());
53#endif
54    EVP_add_digest(EVP_sha3_224());
55    EVP_add_digest(EVP_sha3_256());
56    EVP_add_digest(EVP_sha3_384());
57    EVP_add_digest(EVP_sha3_512());
58    EVP_add_digest(EVP_shake128());
59    EVP_add_digest(EVP_shake256());
60}
61