xref: /optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_register_all_ciphers.c (revision 2a65ecaf7d6f855e24ce1a117fe1931f7378f82c)
1 /* LibTomCrypt, modular cryptographic library -- Tom St Denis */
2 /* SPDX-License-Identifier: Unlicense */
3 
4 #include "tomcrypt_private.h"
5 
6 /**
7   @file crypt_register_all_ciphers.c
8 
9   Steffen Jaeckel
10 */
11 
12 #define REGISTER_CIPHER(h) do {\
13    LTC_ARGCHK(register_cipher(h) != -1); \
14 } while(0)
15 
register_all_ciphers(void)16 int register_all_ciphers(void)
17 {
18 #ifdef LTC_RIJNDAEL
19    /* `aesni_desc` is explicitely not registered, since it's handled from within the `aes_desc` */
20 #ifdef ENCRYPT_ONLY
21    /* alternative would be
22     * register_cipher(&rijndael_enc_desc);
23     */
24    REGISTER_CIPHER(&aes_enc_desc);
25 #else
26    /* alternative would be
27     * register_cipher(&rijndael_desc);
28     */
29    REGISTER_CIPHER(&aes_desc);
30 #endif
31 #endif
32 #ifdef LTC_BLOWFISH
33    REGISTER_CIPHER(&blowfish_desc);
34 #endif
35 #ifdef LTC_XTEA
36    REGISTER_CIPHER(&xtea_desc);
37 #endif
38 #ifdef LTC_RC5
39    REGISTER_CIPHER(&rc5_desc);
40 #endif
41 #ifdef LTC_RC6
42    REGISTER_CIPHER(&rc6_desc);
43 #endif
44 #ifdef LTC_SAFERP
45    REGISTER_CIPHER(&saferp_desc);
46 #endif
47 #ifdef LTC_TWOFISH
48    REGISTER_CIPHER(&twofish_desc);
49 #endif
50 #ifdef LTC_SAFER
51    REGISTER_CIPHER(&safer_k64_desc);
52    REGISTER_CIPHER(&safer_sk64_desc);
53    REGISTER_CIPHER(&safer_k128_desc);
54    REGISTER_CIPHER(&safer_sk128_desc);
55 #endif
56 #ifdef LTC_RC2
57    REGISTER_CIPHER(&rc2_desc);
58 #endif
59 #ifdef LTC_DES
60    REGISTER_CIPHER(&des_desc);
61    REGISTER_CIPHER(&des3_desc);
62 #endif
63 #ifdef LTC_CAST5
64    REGISTER_CIPHER(&cast5_desc);
65 #endif
66 #ifdef LTC_NOEKEON
67    REGISTER_CIPHER(&noekeon_desc);
68 #endif
69 #ifdef LTC_SKIPJACK
70    REGISTER_CIPHER(&skipjack_desc);
71 #endif
72 #ifdef LTC_ANUBIS
73    REGISTER_CIPHER(&anubis_desc);
74 #endif
75 #ifdef LTC_KHAZAD
76    REGISTER_CIPHER(&khazad_desc);
77 #endif
78 #ifdef LTC_KSEED
79    REGISTER_CIPHER(&kseed_desc);
80 #endif
81 #ifdef LTC_KASUMI
82    REGISTER_CIPHER(&kasumi_desc);
83 #endif
84 #ifdef LTC_MULTI2
85    REGISTER_CIPHER(&multi2_desc);
86 #endif
87 #ifdef LTC_CAMELLIA
88    REGISTER_CIPHER(&camellia_desc);
89 #endif
90 #ifdef LTC_IDEA
91    REGISTER_CIPHER(&idea_desc);
92 #endif
93 #ifdef LTC_SERPENT
94    REGISTER_CIPHER(&serpent_desc);
95 #endif
96 #ifdef LTC_TEA
97    REGISTER_CIPHER(&tea_desc);
98 #endif
99    return CRYPT_OK;
100 }
101