1/*
2 *  Query Mbed TLS compile time configurations from mbedtls_config.h
3 *
4 *  Copyright The Mbed TLS Contributors
5 *  SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
6 */
7
8#include "mbedtls/build_info.h"
9
10#include "query_config.h"
11
12#include "mbedtls/platform.h"
13
14/*
15 * Include all the headers with public APIs in case they define a macro to its
16 * default value when that configuration is not set in mbedtls_config.h, or
17 * for PSA_WANT macros, in case they're auto-defined based on mbedtls_config.h
18 * rather than defined directly in crypto_config.h.
19 */
20#include "psa/crypto.h"
21
22#include "mbedtls/aes.h"
23#include "mbedtls/aria.h"
24#include "mbedtls/asn1.h"
25#include "mbedtls/asn1write.h"
26#include "mbedtls/base64.h"
27#include "mbedtls/bignum.h"
28#include "mbedtls/camellia.h"
29#include "mbedtls/ccm.h"
30#include "mbedtls/chacha20.h"
31#include "mbedtls/chachapoly.h"
32#include "mbedtls/cipher.h"
33#include "mbedtls/cmac.h"
34#include "mbedtls/ctr_drbg.h"
35#include "mbedtls/debug.h"
36#include "mbedtls/des.h"
37#include "mbedtls/dhm.h"
38#include "mbedtls/ecdh.h"
39#include "mbedtls/ecdsa.h"
40#include "mbedtls/ecjpake.h"
41#include "mbedtls/ecp.h"
42#include "mbedtls/entropy.h"
43#include "mbedtls/error.h"
44#include "mbedtls/gcm.h"
45#include "mbedtls/hkdf.h"
46#include "mbedtls/hmac_drbg.h"
47#include "mbedtls/md.h"
48#include "mbedtls/md5.h"
49#include "mbedtls/memory_buffer_alloc.h"
50#include "mbedtls/net_sockets.h"
51#include "mbedtls/nist_kw.h"
52#include "mbedtls/oid.h"
53#include "mbedtls/pem.h"
54#include "mbedtls/pk.h"
55#include "mbedtls/pkcs12.h"
56#include "mbedtls/pkcs5.h"
57#if defined(MBEDTLS_HAVE_TIME)
58#include "mbedtls/platform_time.h"
59#endif
60#include "mbedtls/platform_util.h"
61#include "mbedtls/poly1305.h"
62#include "mbedtls/ripemd160.h"
63#include "mbedtls/rsa.h"
64#include "mbedtls/sha1.h"
65#include "mbedtls/sha256.h"
66#include "mbedtls/sha512.h"
67#include "mbedtls/ssl.h"
68#include "mbedtls/ssl_cache.h"
69#include "mbedtls/ssl_ciphersuites.h"
70#include "mbedtls/ssl_cookie.h"
71#include "mbedtls/ssl_ticket.h"
72#include "mbedtls/threading.h"
73#include "mbedtls/timing.h"
74#include "mbedtls/version.h"
75#include "mbedtls/x509.h"
76#include "mbedtls/x509_crl.h"
77#include "mbedtls/x509_crt.h"
78#include "mbedtls/x509_csr.h"
79
80#include <string.h>
81
82/*
83 * Helper macros to convert a macro or its expansion into a string
84 * WARNING: This does not work for expanding function-like macros. However,
85 * Mbed TLS does not currently have configuration options used in this fashion.
86 */
87#define MACRO_EXPANSION_TO_STR(macro)   MACRO_NAME_TO_STR(macro)
88#define MACRO_NAME_TO_STR(macro)                                        \
89    mbedtls_printf("%s", strlen( #macro "") > 0 ? #macro "\n" : "")
90
91#define STRINGIFY(macro)  #macro
92#define OUTPUT_MACRO_NAME_VALUE(macro) mbedtls_printf( #macro "%s\n",   \
93                                                       (STRINGIFY(macro) "")[0] != 0 ? "=" STRINGIFY( \
94                                                           macro) : "")
95
96#if defined(_MSC_VER)
97/*
98 * Visual Studio throws the warning 4003 because many Mbed TLS feature macros
99 * are defined empty. This means that from the preprocessor's point of view
100 * the macro MBEDTLS_EXPANSION_TO_STR is being invoked without arguments as
101 * some macros expand to nothing. We suppress that specific warning to get a
102 * clean build and to ensure that tests treating warnings as errors do not
103 * fail.
104 */
105#pragma warning(push)
106#pragma warning(disable:4003)
107#endif /* _MSC_VER */
108
109int query_config(const char *config)
110{
111    #if defined(MBEDTLS_CONFIG_VERSION)
112    if( strcmp( "MBEDTLS_CONFIG_VERSION", config ) == 0 )
113    {
114        MACRO_EXPANSION_TO_STR( MBEDTLS_CONFIG_VERSION );
115        return( 0 );
116    }
117#endif /* MBEDTLS_CONFIG_VERSION */
118
119#if defined(MBEDTLS_HAVE_ASM)
120    if( strcmp( "MBEDTLS_HAVE_ASM", config ) == 0 )
121    {
122        MACRO_EXPANSION_TO_STR( MBEDTLS_HAVE_ASM );
123        return( 0 );
124    }
125#endif /* MBEDTLS_HAVE_ASM */
126
127#if defined(MBEDTLS_NO_UDBL_DIVISION)
128    if( strcmp( "MBEDTLS_NO_UDBL_DIVISION", config ) == 0 )
129    {
130        MACRO_EXPANSION_TO_STR( MBEDTLS_NO_UDBL_DIVISION );
131        return( 0 );
132    }
133#endif /* MBEDTLS_NO_UDBL_DIVISION */
134
135#if defined(MBEDTLS_NO_64BIT_MULTIPLICATION)
136    if( strcmp( "MBEDTLS_NO_64BIT_MULTIPLICATION", config ) == 0 )
137    {
138        MACRO_EXPANSION_TO_STR( MBEDTLS_NO_64BIT_MULTIPLICATION );
139        return( 0 );
140    }
141#endif /* MBEDTLS_NO_64BIT_MULTIPLICATION */
142
143#if defined(MBEDTLS_HAVE_SSE2)
144    if( strcmp( "MBEDTLS_HAVE_SSE2", config ) == 0 )
145    {
146        MACRO_EXPANSION_TO_STR( MBEDTLS_HAVE_SSE2 );
147        return( 0 );
148    }
149#endif /* MBEDTLS_HAVE_SSE2 */
150
151#if defined(MBEDTLS_HAVE_TIME)
152    if( strcmp( "MBEDTLS_HAVE_TIME", config ) == 0 )
153    {
154        MACRO_EXPANSION_TO_STR( MBEDTLS_HAVE_TIME );
155        return( 0 );
156    }
157#endif /* MBEDTLS_HAVE_TIME */
158
159#if defined(MBEDTLS_HAVE_TIME_DATE)
160    if( strcmp( "MBEDTLS_HAVE_TIME_DATE", config ) == 0 )
161    {
162        MACRO_EXPANSION_TO_STR( MBEDTLS_HAVE_TIME_DATE );
163        return( 0 );
164    }
165#endif /* MBEDTLS_HAVE_TIME_DATE */
166
167#if defined(MBEDTLS_PLATFORM_MEMORY)
168    if( strcmp( "MBEDTLS_PLATFORM_MEMORY", config ) == 0 )
169    {
170        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_MEMORY );
171        return( 0 );
172    }
173#endif /* MBEDTLS_PLATFORM_MEMORY */
174
175#if defined(MBEDTLS_PLATFORM_NO_STD_FUNCTIONS)
176    if( strcmp( "MBEDTLS_PLATFORM_NO_STD_FUNCTIONS", config ) == 0 )
177    {
178        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_NO_STD_FUNCTIONS );
179        return( 0 );
180    }
181#endif /* MBEDTLS_PLATFORM_NO_STD_FUNCTIONS */
182
183#if defined(MBEDTLS_PLATFORM_SETBUF_ALT)
184    if( strcmp( "MBEDTLS_PLATFORM_SETBUF_ALT", config ) == 0 )
185    {
186        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_SETBUF_ALT );
187        return( 0 );
188    }
189#endif /* MBEDTLS_PLATFORM_SETBUF_ALT */
190
191#if defined(MBEDTLS_PLATFORM_EXIT_ALT)
192    if( strcmp( "MBEDTLS_PLATFORM_EXIT_ALT", config ) == 0 )
193    {
194        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_EXIT_ALT );
195        return( 0 );
196    }
197#endif /* MBEDTLS_PLATFORM_EXIT_ALT */
198
199#if defined(MBEDTLS_PLATFORM_TIME_ALT)
200    if( strcmp( "MBEDTLS_PLATFORM_TIME_ALT", config ) == 0 )
201    {
202        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_TIME_ALT );
203        return( 0 );
204    }
205#endif /* MBEDTLS_PLATFORM_TIME_ALT */
206
207#if defined(MBEDTLS_PLATFORM_FPRINTF_ALT)
208    if( strcmp( "MBEDTLS_PLATFORM_FPRINTF_ALT", config ) == 0 )
209    {
210        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_FPRINTF_ALT );
211        return( 0 );
212    }
213#endif /* MBEDTLS_PLATFORM_FPRINTF_ALT */
214
215#if defined(MBEDTLS_PLATFORM_PRINTF_ALT)
216    if( strcmp( "MBEDTLS_PLATFORM_PRINTF_ALT", config ) == 0 )
217    {
218        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_PRINTF_ALT );
219        return( 0 );
220    }
221#endif /* MBEDTLS_PLATFORM_PRINTF_ALT */
222
223#if defined(MBEDTLS_PLATFORM_SNPRINTF_ALT)
224    if( strcmp( "MBEDTLS_PLATFORM_SNPRINTF_ALT", config ) == 0 )
225    {
226        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_SNPRINTF_ALT );
227        return( 0 );
228    }
229#endif /* MBEDTLS_PLATFORM_SNPRINTF_ALT */
230
231#if defined(MBEDTLS_PLATFORM_VSNPRINTF_ALT)
232    if( strcmp( "MBEDTLS_PLATFORM_VSNPRINTF_ALT", config ) == 0 )
233    {
234        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_VSNPRINTF_ALT );
235        return( 0 );
236    }
237#endif /* MBEDTLS_PLATFORM_VSNPRINTF_ALT */
238
239#if defined(MBEDTLS_PLATFORM_NV_SEED_ALT)
240    if( strcmp( "MBEDTLS_PLATFORM_NV_SEED_ALT", config ) == 0 )
241    {
242        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_NV_SEED_ALT );
243        return( 0 );
244    }
245#endif /* MBEDTLS_PLATFORM_NV_SEED_ALT */
246
247#if defined(MBEDTLS_PLATFORM_SETUP_TEARDOWN_ALT)
248    if( strcmp( "MBEDTLS_PLATFORM_SETUP_TEARDOWN_ALT", config ) == 0 )
249    {
250        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_SETUP_TEARDOWN_ALT );
251        return( 0 );
252    }
253#endif /* MBEDTLS_PLATFORM_SETUP_TEARDOWN_ALT */
254
255#if defined(MBEDTLS_PLATFORM_MS_TIME_ALT)
256    if( strcmp( "MBEDTLS_PLATFORM_MS_TIME_ALT", config ) == 0 )
257    {
258        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_MS_TIME_ALT );
259        return( 0 );
260    }
261#endif /* MBEDTLS_PLATFORM_MS_TIME_ALT */
262
263#if defined(MBEDTLS_PLATFORM_GMTIME_R_ALT)
264    if( strcmp( "MBEDTLS_PLATFORM_GMTIME_R_ALT", config ) == 0 )
265    {
266        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_GMTIME_R_ALT );
267        return( 0 );
268    }
269#endif /* MBEDTLS_PLATFORM_GMTIME_R_ALT */
270
271#if defined(MBEDTLS_PLATFORM_ZEROIZE_ALT)
272    if( strcmp( "MBEDTLS_PLATFORM_ZEROIZE_ALT", config ) == 0 )
273    {
274        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_ZEROIZE_ALT );
275        return( 0 );
276    }
277#endif /* MBEDTLS_PLATFORM_ZEROIZE_ALT */
278
279#if defined(MBEDTLS_DEPRECATED_WARNING)
280    if( strcmp( "MBEDTLS_DEPRECATED_WARNING", config ) == 0 )
281    {
282        MACRO_EXPANSION_TO_STR( MBEDTLS_DEPRECATED_WARNING );
283        return( 0 );
284    }
285#endif /* MBEDTLS_DEPRECATED_WARNING */
286
287#if defined(MBEDTLS_DEPRECATED_REMOVED)
288    if( strcmp( "MBEDTLS_DEPRECATED_REMOVED", config ) == 0 )
289    {
290        MACRO_EXPANSION_TO_STR( MBEDTLS_DEPRECATED_REMOVED );
291        return( 0 );
292    }
293#endif /* MBEDTLS_DEPRECATED_REMOVED */
294
295#if defined(MBEDTLS_TIMING_ALT)
296    if( strcmp( "MBEDTLS_TIMING_ALT", config ) == 0 )
297    {
298        MACRO_EXPANSION_TO_STR( MBEDTLS_TIMING_ALT );
299        return( 0 );
300    }
301#endif /* MBEDTLS_TIMING_ALT */
302
303#if defined(MBEDTLS_AES_ALT)
304    if( strcmp( "MBEDTLS_AES_ALT", config ) == 0 )
305    {
306        MACRO_EXPANSION_TO_STR( MBEDTLS_AES_ALT );
307        return( 0 );
308    }
309#endif /* MBEDTLS_AES_ALT */
310
311#if defined(MBEDTLS_ARIA_ALT)
312    if( strcmp( "MBEDTLS_ARIA_ALT", config ) == 0 )
313    {
314        MACRO_EXPANSION_TO_STR( MBEDTLS_ARIA_ALT );
315        return( 0 );
316    }
317#endif /* MBEDTLS_ARIA_ALT */
318
319#if defined(MBEDTLS_CAMELLIA_ALT)
320    if( strcmp( "MBEDTLS_CAMELLIA_ALT", config ) == 0 )
321    {
322        MACRO_EXPANSION_TO_STR( MBEDTLS_CAMELLIA_ALT );
323        return( 0 );
324    }
325#endif /* MBEDTLS_CAMELLIA_ALT */
326
327#if defined(MBEDTLS_CCM_ALT)
328    if( strcmp( "MBEDTLS_CCM_ALT", config ) == 0 )
329    {
330        MACRO_EXPANSION_TO_STR( MBEDTLS_CCM_ALT );
331        return( 0 );
332    }
333#endif /* MBEDTLS_CCM_ALT */
334
335#if defined(MBEDTLS_CHACHA20_ALT)
336    if( strcmp( "MBEDTLS_CHACHA20_ALT", config ) == 0 )
337    {
338        MACRO_EXPANSION_TO_STR( MBEDTLS_CHACHA20_ALT );
339        return( 0 );
340    }
341#endif /* MBEDTLS_CHACHA20_ALT */
342
343#if defined(MBEDTLS_CHACHAPOLY_ALT)
344    if( strcmp( "MBEDTLS_CHACHAPOLY_ALT", config ) == 0 )
345    {
346        MACRO_EXPANSION_TO_STR( MBEDTLS_CHACHAPOLY_ALT );
347        return( 0 );
348    }
349#endif /* MBEDTLS_CHACHAPOLY_ALT */
350
351#if defined(MBEDTLS_CMAC_ALT)
352    if( strcmp( "MBEDTLS_CMAC_ALT", config ) == 0 )
353    {
354        MACRO_EXPANSION_TO_STR( MBEDTLS_CMAC_ALT );
355        return( 0 );
356    }
357#endif /* MBEDTLS_CMAC_ALT */
358
359#if defined(MBEDTLS_DES_ALT)
360    if( strcmp( "MBEDTLS_DES_ALT", config ) == 0 )
361    {
362        MACRO_EXPANSION_TO_STR( MBEDTLS_DES_ALT );
363        return( 0 );
364    }
365#endif /* MBEDTLS_DES_ALT */
366
367#if defined(MBEDTLS_DHM_ALT)
368    if( strcmp( "MBEDTLS_DHM_ALT", config ) == 0 )
369    {
370        MACRO_EXPANSION_TO_STR( MBEDTLS_DHM_ALT );
371        return( 0 );
372    }
373#endif /* MBEDTLS_DHM_ALT */
374
375#if defined(MBEDTLS_ECJPAKE_ALT)
376    if( strcmp( "MBEDTLS_ECJPAKE_ALT", config ) == 0 )
377    {
378        MACRO_EXPANSION_TO_STR( MBEDTLS_ECJPAKE_ALT );
379        return( 0 );
380    }
381#endif /* MBEDTLS_ECJPAKE_ALT */
382
383#if defined(MBEDTLS_GCM_ALT)
384    if( strcmp( "MBEDTLS_GCM_ALT", config ) == 0 )
385    {
386        MACRO_EXPANSION_TO_STR( MBEDTLS_GCM_ALT );
387        return( 0 );
388    }
389#endif /* MBEDTLS_GCM_ALT */
390
391#if defined(MBEDTLS_NIST_KW_ALT)
392    if( strcmp( "MBEDTLS_NIST_KW_ALT", config ) == 0 )
393    {
394        MACRO_EXPANSION_TO_STR( MBEDTLS_NIST_KW_ALT );
395        return( 0 );
396    }
397#endif /* MBEDTLS_NIST_KW_ALT */
398
399#if defined(MBEDTLS_MD5_ALT)
400    if( strcmp( "MBEDTLS_MD5_ALT", config ) == 0 )
401    {
402        MACRO_EXPANSION_TO_STR( MBEDTLS_MD5_ALT );
403        return( 0 );
404    }
405#endif /* MBEDTLS_MD5_ALT */
406
407#if defined(MBEDTLS_POLY1305_ALT)
408    if( strcmp( "MBEDTLS_POLY1305_ALT", config ) == 0 )
409    {
410        MACRO_EXPANSION_TO_STR( MBEDTLS_POLY1305_ALT );
411        return( 0 );
412    }
413#endif /* MBEDTLS_POLY1305_ALT */
414
415#if defined(MBEDTLS_RIPEMD160_ALT)
416    if( strcmp( "MBEDTLS_RIPEMD160_ALT", config ) == 0 )
417    {
418        MACRO_EXPANSION_TO_STR( MBEDTLS_RIPEMD160_ALT );
419        return( 0 );
420    }
421#endif /* MBEDTLS_RIPEMD160_ALT */
422
423#if defined(MBEDTLS_RSA_ALT)
424    if( strcmp( "MBEDTLS_RSA_ALT", config ) == 0 )
425    {
426        MACRO_EXPANSION_TO_STR( MBEDTLS_RSA_ALT );
427        return( 0 );
428    }
429#endif /* MBEDTLS_RSA_ALT */
430
431#if defined(MBEDTLS_SHA1_ALT)
432    if( strcmp( "MBEDTLS_SHA1_ALT", config ) == 0 )
433    {
434        MACRO_EXPANSION_TO_STR( MBEDTLS_SHA1_ALT );
435        return( 0 );
436    }
437#endif /* MBEDTLS_SHA1_ALT */
438
439#if defined(MBEDTLS_SHA256_ALT)
440    if( strcmp( "MBEDTLS_SHA256_ALT", config ) == 0 )
441    {
442        MACRO_EXPANSION_TO_STR( MBEDTLS_SHA256_ALT );
443        return( 0 );
444    }
445#endif /* MBEDTLS_SHA256_ALT */
446
447#if defined(MBEDTLS_SHA512_ALT)
448    if( strcmp( "MBEDTLS_SHA512_ALT", config ) == 0 )
449    {
450        MACRO_EXPANSION_TO_STR( MBEDTLS_SHA512_ALT );
451        return( 0 );
452    }
453#endif /* MBEDTLS_SHA512_ALT */
454
455#if defined(MBEDTLS_ECP_ALT)
456    if( strcmp( "MBEDTLS_ECP_ALT", config ) == 0 )
457    {
458        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_ALT );
459        return( 0 );
460    }
461#endif /* MBEDTLS_ECP_ALT */
462
463#if defined(MBEDTLS_MD5_PROCESS_ALT)
464    if( strcmp( "MBEDTLS_MD5_PROCESS_ALT", config ) == 0 )
465    {
466        MACRO_EXPANSION_TO_STR( MBEDTLS_MD5_PROCESS_ALT );
467        return( 0 );
468    }
469#endif /* MBEDTLS_MD5_PROCESS_ALT */
470
471#if defined(MBEDTLS_RIPEMD160_PROCESS_ALT)
472    if( strcmp( "MBEDTLS_RIPEMD160_PROCESS_ALT", config ) == 0 )
473    {
474        MACRO_EXPANSION_TO_STR( MBEDTLS_RIPEMD160_PROCESS_ALT );
475        return( 0 );
476    }
477#endif /* MBEDTLS_RIPEMD160_PROCESS_ALT */
478
479#if defined(MBEDTLS_SHA1_PROCESS_ALT)
480    if( strcmp( "MBEDTLS_SHA1_PROCESS_ALT", config ) == 0 )
481    {
482        MACRO_EXPANSION_TO_STR( MBEDTLS_SHA1_PROCESS_ALT );
483        return( 0 );
484    }
485#endif /* MBEDTLS_SHA1_PROCESS_ALT */
486
487#if defined(MBEDTLS_SHA256_PROCESS_ALT)
488    if( strcmp( "MBEDTLS_SHA256_PROCESS_ALT", config ) == 0 )
489    {
490        MACRO_EXPANSION_TO_STR( MBEDTLS_SHA256_PROCESS_ALT );
491        return( 0 );
492    }
493#endif /* MBEDTLS_SHA256_PROCESS_ALT */
494
495#if defined(MBEDTLS_SHA512_PROCESS_ALT)
496    if( strcmp( "MBEDTLS_SHA512_PROCESS_ALT", config ) == 0 )
497    {
498        MACRO_EXPANSION_TO_STR( MBEDTLS_SHA512_PROCESS_ALT );
499        return( 0 );
500    }
501#endif /* MBEDTLS_SHA512_PROCESS_ALT */
502
503#if defined(MBEDTLS_DES_SETKEY_ALT)
504    if( strcmp( "MBEDTLS_DES_SETKEY_ALT", config ) == 0 )
505    {
506        MACRO_EXPANSION_TO_STR( MBEDTLS_DES_SETKEY_ALT );
507        return( 0 );
508    }
509#endif /* MBEDTLS_DES_SETKEY_ALT */
510
511#if defined(MBEDTLS_DES_CRYPT_ECB_ALT)
512    if( strcmp( "MBEDTLS_DES_CRYPT_ECB_ALT", config ) == 0 )
513    {
514        MACRO_EXPANSION_TO_STR( MBEDTLS_DES_CRYPT_ECB_ALT );
515        return( 0 );
516    }
517#endif /* MBEDTLS_DES_CRYPT_ECB_ALT */
518
519#if defined(MBEDTLS_DES3_CRYPT_ECB_ALT)
520    if( strcmp( "MBEDTLS_DES3_CRYPT_ECB_ALT", config ) == 0 )
521    {
522        MACRO_EXPANSION_TO_STR( MBEDTLS_DES3_CRYPT_ECB_ALT );
523        return( 0 );
524    }
525#endif /* MBEDTLS_DES3_CRYPT_ECB_ALT */
526
527#if defined(MBEDTLS_AES_SETKEY_ENC_ALT)
528    if( strcmp( "MBEDTLS_AES_SETKEY_ENC_ALT", config ) == 0 )
529    {
530        MACRO_EXPANSION_TO_STR( MBEDTLS_AES_SETKEY_ENC_ALT );
531        return( 0 );
532    }
533#endif /* MBEDTLS_AES_SETKEY_ENC_ALT */
534
535#if defined(MBEDTLS_AES_SETKEY_DEC_ALT)
536    if( strcmp( "MBEDTLS_AES_SETKEY_DEC_ALT", config ) == 0 )
537    {
538        MACRO_EXPANSION_TO_STR( MBEDTLS_AES_SETKEY_DEC_ALT );
539        return( 0 );
540    }
541#endif /* MBEDTLS_AES_SETKEY_DEC_ALT */
542
543#if defined(MBEDTLS_AES_ENCRYPT_ALT)
544    if( strcmp( "MBEDTLS_AES_ENCRYPT_ALT", config ) == 0 )
545    {
546        MACRO_EXPANSION_TO_STR( MBEDTLS_AES_ENCRYPT_ALT );
547        return( 0 );
548    }
549#endif /* MBEDTLS_AES_ENCRYPT_ALT */
550
551#if defined(MBEDTLS_AES_DECRYPT_ALT)
552    if( strcmp( "MBEDTLS_AES_DECRYPT_ALT", config ) == 0 )
553    {
554        MACRO_EXPANSION_TO_STR( MBEDTLS_AES_DECRYPT_ALT );
555        return( 0 );
556    }
557#endif /* MBEDTLS_AES_DECRYPT_ALT */
558
559#if defined(MBEDTLS_ECDH_GEN_PUBLIC_ALT)
560    if( strcmp( "MBEDTLS_ECDH_GEN_PUBLIC_ALT", config ) == 0 )
561    {
562        MACRO_EXPANSION_TO_STR( MBEDTLS_ECDH_GEN_PUBLIC_ALT );
563        return( 0 );
564    }
565#endif /* MBEDTLS_ECDH_GEN_PUBLIC_ALT */
566
567#if defined(MBEDTLS_ECDH_COMPUTE_SHARED_ALT)
568    if( strcmp( "MBEDTLS_ECDH_COMPUTE_SHARED_ALT", config ) == 0 )
569    {
570        MACRO_EXPANSION_TO_STR( MBEDTLS_ECDH_COMPUTE_SHARED_ALT );
571        return( 0 );
572    }
573#endif /* MBEDTLS_ECDH_COMPUTE_SHARED_ALT */
574
575#if defined(MBEDTLS_ECDSA_VERIFY_ALT)
576    if( strcmp( "MBEDTLS_ECDSA_VERIFY_ALT", config ) == 0 )
577    {
578        MACRO_EXPANSION_TO_STR( MBEDTLS_ECDSA_VERIFY_ALT );
579        return( 0 );
580    }
581#endif /* MBEDTLS_ECDSA_VERIFY_ALT */
582
583#if defined(MBEDTLS_ECDSA_SIGN_ALT)
584    if( strcmp( "MBEDTLS_ECDSA_SIGN_ALT", config ) == 0 )
585    {
586        MACRO_EXPANSION_TO_STR( MBEDTLS_ECDSA_SIGN_ALT );
587        return( 0 );
588    }
589#endif /* MBEDTLS_ECDSA_SIGN_ALT */
590
591#if defined(MBEDTLS_ECDSA_GENKEY_ALT)
592    if( strcmp( "MBEDTLS_ECDSA_GENKEY_ALT", config ) == 0 )
593    {
594        MACRO_EXPANSION_TO_STR( MBEDTLS_ECDSA_GENKEY_ALT );
595        return( 0 );
596    }
597#endif /* MBEDTLS_ECDSA_GENKEY_ALT */
598
599#if defined(MBEDTLS_ECP_INTERNAL_ALT)
600    if( strcmp( "MBEDTLS_ECP_INTERNAL_ALT", config ) == 0 )
601    {
602        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_INTERNAL_ALT );
603        return( 0 );
604    }
605#endif /* MBEDTLS_ECP_INTERNAL_ALT */
606
607#if defined(MBEDTLS_ECP_NO_FALLBACK)
608    if( strcmp( "MBEDTLS_ECP_NO_FALLBACK", config ) == 0 )
609    {
610        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_NO_FALLBACK );
611        return( 0 );
612    }
613#endif /* MBEDTLS_ECP_NO_FALLBACK */
614
615#if defined(MBEDTLS_ECP_RANDOMIZE_JAC_ALT)
616    if( strcmp( "MBEDTLS_ECP_RANDOMIZE_JAC_ALT", config ) == 0 )
617    {
618        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_RANDOMIZE_JAC_ALT );
619        return( 0 );
620    }
621#endif /* MBEDTLS_ECP_RANDOMIZE_JAC_ALT */
622
623#if defined(MBEDTLS_ECP_ADD_MIXED_ALT)
624    if( strcmp( "MBEDTLS_ECP_ADD_MIXED_ALT", config ) == 0 )
625    {
626        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_ADD_MIXED_ALT );
627        return( 0 );
628    }
629#endif /* MBEDTLS_ECP_ADD_MIXED_ALT */
630
631#if defined(MBEDTLS_ECP_DOUBLE_JAC_ALT)
632    if( strcmp( "MBEDTLS_ECP_DOUBLE_JAC_ALT", config ) == 0 )
633    {
634        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_DOUBLE_JAC_ALT );
635        return( 0 );
636    }
637#endif /* MBEDTLS_ECP_DOUBLE_JAC_ALT */
638
639#if defined(MBEDTLS_ECP_NORMALIZE_JAC_MANY_ALT)
640    if( strcmp( "MBEDTLS_ECP_NORMALIZE_JAC_MANY_ALT", config ) == 0 )
641    {
642        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_NORMALIZE_JAC_MANY_ALT );
643        return( 0 );
644    }
645#endif /* MBEDTLS_ECP_NORMALIZE_JAC_MANY_ALT */
646
647#if defined(MBEDTLS_ECP_NORMALIZE_JAC_ALT)
648    if( strcmp( "MBEDTLS_ECP_NORMALIZE_JAC_ALT", config ) == 0 )
649    {
650        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_NORMALIZE_JAC_ALT );
651        return( 0 );
652    }
653#endif /* MBEDTLS_ECP_NORMALIZE_JAC_ALT */
654
655#if defined(MBEDTLS_ECP_DOUBLE_ADD_MXZ_ALT)
656    if( strcmp( "MBEDTLS_ECP_DOUBLE_ADD_MXZ_ALT", config ) == 0 )
657    {
658        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_DOUBLE_ADD_MXZ_ALT );
659        return( 0 );
660    }
661#endif /* MBEDTLS_ECP_DOUBLE_ADD_MXZ_ALT */
662
663#if defined(MBEDTLS_ECP_RANDOMIZE_MXZ_ALT)
664    if( strcmp( "MBEDTLS_ECP_RANDOMIZE_MXZ_ALT", config ) == 0 )
665    {
666        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_RANDOMIZE_MXZ_ALT );
667        return( 0 );
668    }
669#endif /* MBEDTLS_ECP_RANDOMIZE_MXZ_ALT */
670
671#if defined(MBEDTLS_ECP_NORMALIZE_MXZ_ALT)
672    if( strcmp( "MBEDTLS_ECP_NORMALIZE_MXZ_ALT", config ) == 0 )
673    {
674        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_NORMALIZE_MXZ_ALT );
675        return( 0 );
676    }
677#endif /* MBEDTLS_ECP_NORMALIZE_MXZ_ALT */
678
679#if defined(MBEDTLS_ENTROPY_HARDWARE_ALT)
680    if( strcmp( "MBEDTLS_ENTROPY_HARDWARE_ALT", config ) == 0 )
681    {
682        MACRO_EXPANSION_TO_STR( MBEDTLS_ENTROPY_HARDWARE_ALT );
683        return( 0 );
684    }
685#endif /* MBEDTLS_ENTROPY_HARDWARE_ALT */
686
687#if defined(MBEDTLS_AES_ROM_TABLES)
688    if( strcmp( "MBEDTLS_AES_ROM_TABLES", config ) == 0 )
689    {
690        MACRO_EXPANSION_TO_STR( MBEDTLS_AES_ROM_TABLES );
691        return( 0 );
692    }
693#endif /* MBEDTLS_AES_ROM_TABLES */
694
695#if defined(MBEDTLS_AES_FEWER_TABLES)
696    if( strcmp( "MBEDTLS_AES_FEWER_TABLES", config ) == 0 )
697    {
698        MACRO_EXPANSION_TO_STR( MBEDTLS_AES_FEWER_TABLES );
699        return( 0 );
700    }
701#endif /* MBEDTLS_AES_FEWER_TABLES */
702
703#if defined(MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH)
704    if( strcmp( "MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH", config ) == 0 )
705    {
706        MACRO_EXPANSION_TO_STR( MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH );
707        return( 0 );
708    }
709#endif /* MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH */
710
711#if defined(MBEDTLS_AES_USE_HARDWARE_ONLY)
712    if( strcmp( "MBEDTLS_AES_USE_HARDWARE_ONLY", config ) == 0 )
713    {
714        MACRO_EXPANSION_TO_STR( MBEDTLS_AES_USE_HARDWARE_ONLY );
715        return( 0 );
716    }
717#endif /* MBEDTLS_AES_USE_HARDWARE_ONLY */
718
719#if defined(MBEDTLS_CAMELLIA_SMALL_MEMORY)
720    if( strcmp( "MBEDTLS_CAMELLIA_SMALL_MEMORY", config ) == 0 )
721    {
722        MACRO_EXPANSION_TO_STR( MBEDTLS_CAMELLIA_SMALL_MEMORY );
723        return( 0 );
724    }
725#endif /* MBEDTLS_CAMELLIA_SMALL_MEMORY */
726
727#if defined(MBEDTLS_CHECK_RETURN_WARNING)
728    if( strcmp( "MBEDTLS_CHECK_RETURN_WARNING", config ) == 0 )
729    {
730        MACRO_EXPANSION_TO_STR( MBEDTLS_CHECK_RETURN_WARNING );
731        return( 0 );
732    }
733#endif /* MBEDTLS_CHECK_RETURN_WARNING */
734
735#if defined(MBEDTLS_CIPHER_MODE_CBC)
736    if( strcmp( "MBEDTLS_CIPHER_MODE_CBC", config ) == 0 )
737    {
738        MACRO_EXPANSION_TO_STR( MBEDTLS_CIPHER_MODE_CBC );
739        return( 0 );
740    }
741#endif /* MBEDTLS_CIPHER_MODE_CBC */
742
743#if defined(MBEDTLS_CIPHER_MODE_CFB)
744    if( strcmp( "MBEDTLS_CIPHER_MODE_CFB", config ) == 0 )
745    {
746        MACRO_EXPANSION_TO_STR( MBEDTLS_CIPHER_MODE_CFB );
747        return( 0 );
748    }
749#endif /* MBEDTLS_CIPHER_MODE_CFB */
750
751#if defined(MBEDTLS_CIPHER_MODE_CTR)
752    if( strcmp( "MBEDTLS_CIPHER_MODE_CTR", config ) == 0 )
753    {
754        MACRO_EXPANSION_TO_STR( MBEDTLS_CIPHER_MODE_CTR );
755        return( 0 );
756    }
757#endif /* MBEDTLS_CIPHER_MODE_CTR */
758
759#if defined(MBEDTLS_CIPHER_MODE_OFB)
760    if( strcmp( "MBEDTLS_CIPHER_MODE_OFB", config ) == 0 )
761    {
762        MACRO_EXPANSION_TO_STR( MBEDTLS_CIPHER_MODE_OFB );
763        return( 0 );
764    }
765#endif /* MBEDTLS_CIPHER_MODE_OFB */
766
767#if defined(MBEDTLS_CIPHER_MODE_XTS)
768    if( strcmp( "MBEDTLS_CIPHER_MODE_XTS", config ) == 0 )
769    {
770        MACRO_EXPANSION_TO_STR( MBEDTLS_CIPHER_MODE_XTS );
771        return( 0 );
772    }
773#endif /* MBEDTLS_CIPHER_MODE_XTS */
774
775#if defined(MBEDTLS_CIPHER_NULL_CIPHER)
776    if( strcmp( "MBEDTLS_CIPHER_NULL_CIPHER", config ) == 0 )
777    {
778        MACRO_EXPANSION_TO_STR( MBEDTLS_CIPHER_NULL_CIPHER );
779        return( 0 );
780    }
781#endif /* MBEDTLS_CIPHER_NULL_CIPHER */
782
783#if defined(MBEDTLS_CIPHER_PADDING_PKCS7)
784    if( strcmp( "MBEDTLS_CIPHER_PADDING_PKCS7", config ) == 0 )
785    {
786        MACRO_EXPANSION_TO_STR( MBEDTLS_CIPHER_PADDING_PKCS7 );
787        return( 0 );
788    }
789#endif /* MBEDTLS_CIPHER_PADDING_PKCS7 */
790
791#if defined(MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS)
792    if( strcmp( "MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS", config ) == 0 )
793    {
794        MACRO_EXPANSION_TO_STR( MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS );
795        return( 0 );
796    }
797#endif /* MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS */
798
799#if defined(MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN)
800    if( strcmp( "MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN", config ) == 0 )
801    {
802        MACRO_EXPANSION_TO_STR( MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN );
803        return( 0 );
804    }
805#endif /* MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN */
806
807#if defined(MBEDTLS_CIPHER_PADDING_ZEROS)
808    if( strcmp( "MBEDTLS_CIPHER_PADDING_ZEROS", config ) == 0 )
809    {
810        MACRO_EXPANSION_TO_STR( MBEDTLS_CIPHER_PADDING_ZEROS );
811        return( 0 );
812    }
813#endif /* MBEDTLS_CIPHER_PADDING_ZEROS */
814
815#if defined(MBEDTLS_CTR_DRBG_USE_128_BIT_KEY)
816    if( strcmp( "MBEDTLS_CTR_DRBG_USE_128_BIT_KEY", config ) == 0 )
817    {
818        MACRO_EXPANSION_TO_STR( MBEDTLS_CTR_DRBG_USE_128_BIT_KEY );
819        return( 0 );
820    }
821#endif /* MBEDTLS_CTR_DRBG_USE_128_BIT_KEY */
822
823#if defined(MBEDTLS_ECDH_VARIANT_EVEREST_ENABLED)
824    if( strcmp( "MBEDTLS_ECDH_VARIANT_EVEREST_ENABLED", config ) == 0 )
825    {
826        MACRO_EXPANSION_TO_STR( MBEDTLS_ECDH_VARIANT_EVEREST_ENABLED );
827        return( 0 );
828    }
829#endif /* MBEDTLS_ECDH_VARIANT_EVEREST_ENABLED */
830
831#if defined(MBEDTLS_ECP_DP_SECP192R1_ENABLED)
832    if( strcmp( "MBEDTLS_ECP_DP_SECP192R1_ENABLED", config ) == 0 )
833    {
834        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_DP_SECP192R1_ENABLED );
835        return( 0 );
836    }
837#endif /* MBEDTLS_ECP_DP_SECP192R1_ENABLED */
838
839#if defined(MBEDTLS_ECP_DP_SECP224R1_ENABLED)
840    if( strcmp( "MBEDTLS_ECP_DP_SECP224R1_ENABLED", config ) == 0 )
841    {
842        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_DP_SECP224R1_ENABLED );
843        return( 0 );
844    }
845#endif /* MBEDTLS_ECP_DP_SECP224R1_ENABLED */
846
847#if defined(MBEDTLS_ECP_DP_SECP256R1_ENABLED)
848    if( strcmp( "MBEDTLS_ECP_DP_SECP256R1_ENABLED", config ) == 0 )
849    {
850        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_DP_SECP256R1_ENABLED );
851        return( 0 );
852    }
853#endif /* MBEDTLS_ECP_DP_SECP256R1_ENABLED */
854
855#if defined(MBEDTLS_ECP_DP_SECP384R1_ENABLED)
856    if( strcmp( "MBEDTLS_ECP_DP_SECP384R1_ENABLED", config ) == 0 )
857    {
858        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_DP_SECP384R1_ENABLED );
859        return( 0 );
860    }
861#endif /* MBEDTLS_ECP_DP_SECP384R1_ENABLED */
862
863#if defined(MBEDTLS_ECP_DP_SECP521R1_ENABLED)
864    if( strcmp( "MBEDTLS_ECP_DP_SECP521R1_ENABLED", config ) == 0 )
865    {
866        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_DP_SECP521R1_ENABLED );
867        return( 0 );
868    }
869#endif /* MBEDTLS_ECP_DP_SECP521R1_ENABLED */
870
871#if defined(MBEDTLS_ECP_DP_SECP192K1_ENABLED)
872    if( strcmp( "MBEDTLS_ECP_DP_SECP192K1_ENABLED", config ) == 0 )
873    {
874        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_DP_SECP192K1_ENABLED );
875        return( 0 );
876    }
877#endif /* MBEDTLS_ECP_DP_SECP192K1_ENABLED */
878
879#if defined(MBEDTLS_ECP_DP_SECP224K1_ENABLED)
880    if( strcmp( "MBEDTLS_ECP_DP_SECP224K1_ENABLED", config ) == 0 )
881    {
882        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_DP_SECP224K1_ENABLED );
883        return( 0 );
884    }
885#endif /* MBEDTLS_ECP_DP_SECP224K1_ENABLED */
886
887#if defined(MBEDTLS_ECP_DP_SECP256K1_ENABLED)
888    if( strcmp( "MBEDTLS_ECP_DP_SECP256K1_ENABLED", config ) == 0 )
889    {
890        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_DP_SECP256K1_ENABLED );
891        return( 0 );
892    }
893#endif /* MBEDTLS_ECP_DP_SECP256K1_ENABLED */
894
895#if defined(MBEDTLS_ECP_DP_BP256R1_ENABLED)
896    if( strcmp( "MBEDTLS_ECP_DP_BP256R1_ENABLED", config ) == 0 )
897    {
898        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_DP_BP256R1_ENABLED );
899        return( 0 );
900    }
901#endif /* MBEDTLS_ECP_DP_BP256R1_ENABLED */
902
903#if defined(MBEDTLS_ECP_DP_BP384R1_ENABLED)
904    if( strcmp( "MBEDTLS_ECP_DP_BP384R1_ENABLED", config ) == 0 )
905    {
906        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_DP_BP384R1_ENABLED );
907        return( 0 );
908    }
909#endif /* MBEDTLS_ECP_DP_BP384R1_ENABLED */
910
911#if defined(MBEDTLS_ECP_DP_BP512R1_ENABLED)
912    if( strcmp( "MBEDTLS_ECP_DP_BP512R1_ENABLED", config ) == 0 )
913    {
914        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_DP_BP512R1_ENABLED );
915        return( 0 );
916    }
917#endif /* MBEDTLS_ECP_DP_BP512R1_ENABLED */
918
919#if defined(MBEDTLS_ECP_DP_CURVE25519_ENABLED)
920    if( strcmp( "MBEDTLS_ECP_DP_CURVE25519_ENABLED", config ) == 0 )
921    {
922        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_DP_CURVE25519_ENABLED );
923        return( 0 );
924    }
925#endif /* MBEDTLS_ECP_DP_CURVE25519_ENABLED */
926
927#if defined(MBEDTLS_ECP_DP_CURVE448_ENABLED)
928    if( strcmp( "MBEDTLS_ECP_DP_CURVE448_ENABLED", config ) == 0 )
929    {
930        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_DP_CURVE448_ENABLED );
931        return( 0 );
932    }
933#endif /* MBEDTLS_ECP_DP_CURVE448_ENABLED */
934
935#if defined(MBEDTLS_ECP_NIST_OPTIM)
936    if( strcmp( "MBEDTLS_ECP_NIST_OPTIM", config ) == 0 )
937    {
938        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_NIST_OPTIM );
939        return( 0 );
940    }
941#endif /* MBEDTLS_ECP_NIST_OPTIM */
942
943#if defined(MBEDTLS_ECP_RESTARTABLE)
944    if( strcmp( "MBEDTLS_ECP_RESTARTABLE", config ) == 0 )
945    {
946        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_RESTARTABLE );
947        return( 0 );
948    }
949#endif /* MBEDTLS_ECP_RESTARTABLE */
950
951#if defined(MBEDTLS_ECP_WITH_MPI_UINT)
952    if( strcmp( "MBEDTLS_ECP_WITH_MPI_UINT", config ) == 0 )
953    {
954        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_WITH_MPI_UINT );
955        return( 0 );
956    }
957#endif /* MBEDTLS_ECP_WITH_MPI_UINT */
958
959#if defined(MBEDTLS_ECDSA_DETERMINISTIC)
960    if( strcmp( "MBEDTLS_ECDSA_DETERMINISTIC", config ) == 0 )
961    {
962        MACRO_EXPANSION_TO_STR( MBEDTLS_ECDSA_DETERMINISTIC );
963        return( 0 );
964    }
965#endif /* MBEDTLS_ECDSA_DETERMINISTIC */
966
967#if defined(MBEDTLS_KEY_EXCHANGE_PSK_ENABLED)
968    if( strcmp( "MBEDTLS_KEY_EXCHANGE_PSK_ENABLED", config ) == 0 )
969    {
970        MACRO_EXPANSION_TO_STR( MBEDTLS_KEY_EXCHANGE_PSK_ENABLED );
971        return( 0 );
972    }
973#endif /* MBEDTLS_KEY_EXCHANGE_PSK_ENABLED */
974
975#if defined(MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED)
976    if( strcmp( "MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED", config ) == 0 )
977    {
978        MACRO_EXPANSION_TO_STR( MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED );
979        return( 0 );
980    }
981#endif /* MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED */
982
983#if defined(MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED)
984    if( strcmp( "MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED", config ) == 0 )
985    {
986        MACRO_EXPANSION_TO_STR( MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED );
987        return( 0 );
988    }
989#endif /* MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED */
990
991#if defined(MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED)
992    if( strcmp( "MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED", config ) == 0 )
993    {
994        MACRO_EXPANSION_TO_STR( MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED );
995        return( 0 );
996    }
997#endif /* MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED */
998
999#if defined(MBEDTLS_KEY_EXCHANGE_RSA_ENABLED)
1000    if( strcmp( "MBEDTLS_KEY_EXCHANGE_RSA_ENABLED", config ) == 0 )
1001    {
1002        MACRO_EXPANSION_TO_STR( MBEDTLS_KEY_EXCHANGE_RSA_ENABLED );
1003        return( 0 );
1004    }
1005#endif /* MBEDTLS_KEY_EXCHANGE_RSA_ENABLED */
1006
1007#if defined(MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED)
1008    if( strcmp( "MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED", config ) == 0 )
1009    {
1010        MACRO_EXPANSION_TO_STR( MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED );
1011        return( 0 );
1012    }
1013#endif /* MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED */
1014
1015#if defined(MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED)
1016    if( strcmp( "MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED", config ) == 0 )
1017    {
1018        MACRO_EXPANSION_TO_STR( MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED );
1019        return( 0 );
1020    }
1021#endif /* MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED */
1022
1023#if defined(MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED)
1024    if( strcmp( "MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED", config ) == 0 )
1025    {
1026        MACRO_EXPANSION_TO_STR( MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED );
1027        return( 0 );
1028    }
1029#endif /* MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED */
1030
1031#if defined(MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA_ENABLED)
1032    if( strcmp( "MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA_ENABLED", config ) == 0 )
1033    {
1034        MACRO_EXPANSION_TO_STR( MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA_ENABLED );
1035        return( 0 );
1036    }
1037#endif /* MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA_ENABLED */
1038
1039#if defined(MBEDTLS_KEY_EXCHANGE_ECDH_RSA_ENABLED)
1040    if( strcmp( "MBEDTLS_KEY_EXCHANGE_ECDH_RSA_ENABLED", config ) == 0 )
1041    {
1042        MACRO_EXPANSION_TO_STR( MBEDTLS_KEY_EXCHANGE_ECDH_RSA_ENABLED );
1043        return( 0 );
1044    }
1045#endif /* MBEDTLS_KEY_EXCHANGE_ECDH_RSA_ENABLED */
1046
1047#if defined(MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED)
1048    if( strcmp( "MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED", config ) == 0 )
1049    {
1050        MACRO_EXPANSION_TO_STR( MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED );
1051        return( 0 );
1052    }
1053#endif /* MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED */
1054
1055#if defined(MBEDTLS_PK_PARSE_EC_EXTENDED)
1056    if( strcmp( "MBEDTLS_PK_PARSE_EC_EXTENDED", config ) == 0 )
1057    {
1058        MACRO_EXPANSION_TO_STR( MBEDTLS_PK_PARSE_EC_EXTENDED );
1059        return( 0 );
1060    }
1061#endif /* MBEDTLS_PK_PARSE_EC_EXTENDED */
1062
1063#if defined(MBEDTLS_PK_PARSE_EC_COMPRESSED)
1064    if( strcmp( "MBEDTLS_PK_PARSE_EC_COMPRESSED", config ) == 0 )
1065    {
1066        MACRO_EXPANSION_TO_STR( MBEDTLS_PK_PARSE_EC_COMPRESSED );
1067        return( 0 );
1068    }
1069#endif /* MBEDTLS_PK_PARSE_EC_COMPRESSED */
1070
1071#if defined(MBEDTLS_ERROR_STRERROR_DUMMY)
1072    if( strcmp( "MBEDTLS_ERROR_STRERROR_DUMMY", config ) == 0 )
1073    {
1074        MACRO_EXPANSION_TO_STR( MBEDTLS_ERROR_STRERROR_DUMMY );
1075        return( 0 );
1076    }
1077#endif /* MBEDTLS_ERROR_STRERROR_DUMMY */
1078
1079#if defined(MBEDTLS_GENPRIME)
1080    if( strcmp( "MBEDTLS_GENPRIME", config ) == 0 )
1081    {
1082        MACRO_EXPANSION_TO_STR( MBEDTLS_GENPRIME );
1083        return( 0 );
1084    }
1085#endif /* MBEDTLS_GENPRIME */
1086
1087#if defined(MBEDTLS_FS_IO)
1088    if( strcmp( "MBEDTLS_FS_IO", config ) == 0 )
1089    {
1090        MACRO_EXPANSION_TO_STR( MBEDTLS_FS_IO );
1091        return( 0 );
1092    }
1093#endif /* MBEDTLS_FS_IO */
1094
1095#if defined(MBEDTLS_NO_DEFAULT_ENTROPY_SOURCES)
1096    if( strcmp( "MBEDTLS_NO_DEFAULT_ENTROPY_SOURCES", config ) == 0 )
1097    {
1098        MACRO_EXPANSION_TO_STR( MBEDTLS_NO_DEFAULT_ENTROPY_SOURCES );
1099        return( 0 );
1100    }
1101#endif /* MBEDTLS_NO_DEFAULT_ENTROPY_SOURCES */
1102
1103#if defined(MBEDTLS_NO_PLATFORM_ENTROPY)
1104    if( strcmp( "MBEDTLS_NO_PLATFORM_ENTROPY", config ) == 0 )
1105    {
1106        MACRO_EXPANSION_TO_STR( MBEDTLS_NO_PLATFORM_ENTROPY );
1107        return( 0 );
1108    }
1109#endif /* MBEDTLS_NO_PLATFORM_ENTROPY */
1110
1111#if defined(MBEDTLS_ENTROPY_FORCE_SHA256)
1112    if( strcmp( "MBEDTLS_ENTROPY_FORCE_SHA256", config ) == 0 )
1113    {
1114        MACRO_EXPANSION_TO_STR( MBEDTLS_ENTROPY_FORCE_SHA256 );
1115        return( 0 );
1116    }
1117#endif /* MBEDTLS_ENTROPY_FORCE_SHA256 */
1118
1119#if defined(MBEDTLS_ENTROPY_NV_SEED)
1120    if( strcmp( "MBEDTLS_ENTROPY_NV_SEED", config ) == 0 )
1121    {
1122        MACRO_EXPANSION_TO_STR( MBEDTLS_ENTROPY_NV_SEED );
1123        return( 0 );
1124    }
1125#endif /* MBEDTLS_ENTROPY_NV_SEED */
1126
1127#if defined(MBEDTLS_PSA_CRYPTO_KEY_ID_ENCODES_OWNER)
1128    if( strcmp( "MBEDTLS_PSA_CRYPTO_KEY_ID_ENCODES_OWNER", config ) == 0 )
1129    {
1130        MACRO_EXPANSION_TO_STR( MBEDTLS_PSA_CRYPTO_KEY_ID_ENCODES_OWNER );
1131        return( 0 );
1132    }
1133#endif /* MBEDTLS_PSA_CRYPTO_KEY_ID_ENCODES_OWNER */
1134
1135#if defined(MBEDTLS_MEMORY_DEBUG)
1136    if( strcmp( "MBEDTLS_MEMORY_DEBUG", config ) == 0 )
1137    {
1138        MACRO_EXPANSION_TO_STR( MBEDTLS_MEMORY_DEBUG );
1139        return( 0 );
1140    }
1141#endif /* MBEDTLS_MEMORY_DEBUG */
1142
1143#if defined(MBEDTLS_MEMORY_BACKTRACE)
1144    if( strcmp( "MBEDTLS_MEMORY_BACKTRACE", config ) == 0 )
1145    {
1146        MACRO_EXPANSION_TO_STR( MBEDTLS_MEMORY_BACKTRACE );
1147        return( 0 );
1148    }
1149#endif /* MBEDTLS_MEMORY_BACKTRACE */
1150
1151#if defined(MBEDTLS_PK_RSA_ALT_SUPPORT)
1152    if( strcmp( "MBEDTLS_PK_RSA_ALT_SUPPORT", config ) == 0 )
1153    {
1154        MACRO_EXPANSION_TO_STR( MBEDTLS_PK_RSA_ALT_SUPPORT );
1155        return( 0 );
1156    }
1157#endif /* MBEDTLS_PK_RSA_ALT_SUPPORT */
1158
1159#if defined(MBEDTLS_PKCS1_V15)
1160    if( strcmp( "MBEDTLS_PKCS1_V15", config ) == 0 )
1161    {
1162        MACRO_EXPANSION_TO_STR( MBEDTLS_PKCS1_V15 );
1163        return( 0 );
1164    }
1165#endif /* MBEDTLS_PKCS1_V15 */
1166
1167#if defined(MBEDTLS_PKCS1_V21)
1168    if( strcmp( "MBEDTLS_PKCS1_V21", config ) == 0 )
1169    {
1170        MACRO_EXPANSION_TO_STR( MBEDTLS_PKCS1_V21 );
1171        return( 0 );
1172    }
1173#endif /* MBEDTLS_PKCS1_V21 */
1174
1175#if defined(MBEDTLS_PSA_CRYPTO_BUILTIN_KEYS)
1176    if( strcmp( "MBEDTLS_PSA_CRYPTO_BUILTIN_KEYS", config ) == 0 )
1177    {
1178        MACRO_EXPANSION_TO_STR( MBEDTLS_PSA_CRYPTO_BUILTIN_KEYS );
1179        return( 0 );
1180    }
1181#endif /* MBEDTLS_PSA_CRYPTO_BUILTIN_KEYS */
1182
1183#if defined(MBEDTLS_PSA_CRYPTO_CLIENT)
1184    if( strcmp( "MBEDTLS_PSA_CRYPTO_CLIENT", config ) == 0 )
1185    {
1186        MACRO_EXPANSION_TO_STR( MBEDTLS_PSA_CRYPTO_CLIENT );
1187        return( 0 );
1188    }
1189#endif /* MBEDTLS_PSA_CRYPTO_CLIENT */
1190
1191#if defined(MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG)
1192    if( strcmp( "MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG", config ) == 0 )
1193    {
1194        MACRO_EXPANSION_TO_STR( MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG );
1195        return( 0 );
1196    }
1197#endif /* MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG */
1198
1199#if defined(MBEDTLS_PSA_CRYPTO_SPM)
1200    if( strcmp( "MBEDTLS_PSA_CRYPTO_SPM", config ) == 0 )
1201    {
1202        MACRO_EXPANSION_TO_STR( MBEDTLS_PSA_CRYPTO_SPM );
1203        return( 0 );
1204    }
1205#endif /* MBEDTLS_PSA_CRYPTO_SPM */
1206
1207#if defined(MBEDTLS_PSA_P256M_DRIVER_ENABLED)
1208    if( strcmp( "MBEDTLS_PSA_P256M_DRIVER_ENABLED", config ) == 0 )
1209    {
1210        MACRO_EXPANSION_TO_STR( MBEDTLS_PSA_P256M_DRIVER_ENABLED );
1211        return( 0 );
1212    }
1213#endif /* MBEDTLS_PSA_P256M_DRIVER_ENABLED */
1214
1215#if defined(MBEDTLS_PSA_INJECT_ENTROPY)
1216    if( strcmp( "MBEDTLS_PSA_INJECT_ENTROPY", config ) == 0 )
1217    {
1218        MACRO_EXPANSION_TO_STR( MBEDTLS_PSA_INJECT_ENTROPY );
1219        return( 0 );
1220    }
1221#endif /* MBEDTLS_PSA_INJECT_ENTROPY */
1222
1223#if defined(MBEDTLS_PSA_ASSUME_EXCLUSIVE_BUFFERS)
1224    if( strcmp( "MBEDTLS_PSA_ASSUME_EXCLUSIVE_BUFFERS", config ) == 0 )
1225    {
1226        MACRO_EXPANSION_TO_STR( MBEDTLS_PSA_ASSUME_EXCLUSIVE_BUFFERS );
1227        return( 0 );
1228    }
1229#endif /* MBEDTLS_PSA_ASSUME_EXCLUSIVE_BUFFERS */
1230
1231#if defined(MBEDTLS_RSA_NO_CRT)
1232    if( strcmp( "MBEDTLS_RSA_NO_CRT", config ) == 0 )
1233    {
1234        MACRO_EXPANSION_TO_STR( MBEDTLS_RSA_NO_CRT );
1235        return( 0 );
1236    }
1237#endif /* MBEDTLS_RSA_NO_CRT */
1238
1239#if defined(MBEDTLS_SELF_TEST)
1240    if( strcmp( "MBEDTLS_SELF_TEST", config ) == 0 )
1241    {
1242        MACRO_EXPANSION_TO_STR( MBEDTLS_SELF_TEST );
1243        return( 0 );
1244    }
1245#endif /* MBEDTLS_SELF_TEST */
1246
1247#if defined(MBEDTLS_SHA256_SMALLER)
1248    if( strcmp( "MBEDTLS_SHA256_SMALLER", config ) == 0 )
1249    {
1250        MACRO_EXPANSION_TO_STR( MBEDTLS_SHA256_SMALLER );
1251        return( 0 );
1252    }
1253#endif /* MBEDTLS_SHA256_SMALLER */
1254
1255#if defined(MBEDTLS_SHA512_SMALLER)
1256    if( strcmp( "MBEDTLS_SHA512_SMALLER", config ) == 0 )
1257    {
1258        MACRO_EXPANSION_TO_STR( MBEDTLS_SHA512_SMALLER );
1259        return( 0 );
1260    }
1261#endif /* MBEDTLS_SHA512_SMALLER */
1262
1263#if defined(MBEDTLS_SSL_ALL_ALERT_MESSAGES)
1264    if( strcmp( "MBEDTLS_SSL_ALL_ALERT_MESSAGES", config ) == 0 )
1265    {
1266        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_ALL_ALERT_MESSAGES );
1267        return( 0 );
1268    }
1269#endif /* MBEDTLS_SSL_ALL_ALERT_MESSAGES */
1270
1271#if defined(MBEDTLS_SSL_DTLS_CONNECTION_ID)
1272    if( strcmp( "MBEDTLS_SSL_DTLS_CONNECTION_ID", config ) == 0 )
1273    {
1274        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_DTLS_CONNECTION_ID );
1275        return( 0 );
1276    }
1277#endif /* MBEDTLS_SSL_DTLS_CONNECTION_ID */
1278
1279#if defined(MBEDTLS_SSL_DTLS_CONNECTION_ID_COMPAT)
1280    if( strcmp( "MBEDTLS_SSL_DTLS_CONNECTION_ID_COMPAT", config ) == 0 )
1281    {
1282        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_DTLS_CONNECTION_ID_COMPAT );
1283        return( 0 );
1284    }
1285#endif /* MBEDTLS_SSL_DTLS_CONNECTION_ID_COMPAT */
1286
1287#if defined(MBEDTLS_SSL_ASYNC_PRIVATE)
1288    if( strcmp( "MBEDTLS_SSL_ASYNC_PRIVATE", config ) == 0 )
1289    {
1290        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_ASYNC_PRIVATE );
1291        return( 0 );
1292    }
1293#endif /* MBEDTLS_SSL_ASYNC_PRIVATE */
1294
1295#if defined(MBEDTLS_SSL_CONTEXT_SERIALIZATION)
1296    if( strcmp( "MBEDTLS_SSL_CONTEXT_SERIALIZATION", config ) == 0 )
1297    {
1298        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_CONTEXT_SERIALIZATION );
1299        return( 0 );
1300    }
1301#endif /* MBEDTLS_SSL_CONTEXT_SERIALIZATION */
1302
1303#if defined(MBEDTLS_SSL_DEBUG_ALL)
1304    if( strcmp( "MBEDTLS_SSL_DEBUG_ALL", config ) == 0 )
1305    {
1306        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_DEBUG_ALL );
1307        return( 0 );
1308    }
1309#endif /* MBEDTLS_SSL_DEBUG_ALL */
1310
1311#if defined(MBEDTLS_SSL_ENCRYPT_THEN_MAC)
1312    if( strcmp( "MBEDTLS_SSL_ENCRYPT_THEN_MAC", config ) == 0 )
1313    {
1314        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_ENCRYPT_THEN_MAC );
1315        return( 0 );
1316    }
1317#endif /* MBEDTLS_SSL_ENCRYPT_THEN_MAC */
1318
1319#if defined(MBEDTLS_SSL_EXTENDED_MASTER_SECRET)
1320    if( strcmp( "MBEDTLS_SSL_EXTENDED_MASTER_SECRET", config ) == 0 )
1321    {
1322        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_EXTENDED_MASTER_SECRET );
1323        return( 0 );
1324    }
1325#endif /* MBEDTLS_SSL_EXTENDED_MASTER_SECRET */
1326
1327#if defined(MBEDTLS_SSL_KEEP_PEER_CERTIFICATE)
1328    if( strcmp( "MBEDTLS_SSL_KEEP_PEER_CERTIFICATE", config ) == 0 )
1329    {
1330        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_KEEP_PEER_CERTIFICATE );
1331        return( 0 );
1332    }
1333#endif /* MBEDTLS_SSL_KEEP_PEER_CERTIFICATE */
1334
1335#if defined(MBEDTLS_SSL_RENEGOTIATION)
1336    if( strcmp( "MBEDTLS_SSL_RENEGOTIATION", config ) == 0 )
1337    {
1338        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_RENEGOTIATION );
1339        return( 0 );
1340    }
1341#endif /* MBEDTLS_SSL_RENEGOTIATION */
1342
1343#if defined(MBEDTLS_SSL_MAX_FRAGMENT_LENGTH)
1344    if( strcmp( "MBEDTLS_SSL_MAX_FRAGMENT_LENGTH", config ) == 0 )
1345    {
1346        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_MAX_FRAGMENT_LENGTH );
1347        return( 0 );
1348    }
1349#endif /* MBEDTLS_SSL_MAX_FRAGMENT_LENGTH */
1350
1351#if defined(MBEDTLS_SSL_RECORD_SIZE_LIMIT)
1352    if( strcmp( "MBEDTLS_SSL_RECORD_SIZE_LIMIT", config ) == 0 )
1353    {
1354        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_RECORD_SIZE_LIMIT );
1355        return( 0 );
1356    }
1357#endif /* MBEDTLS_SSL_RECORD_SIZE_LIMIT */
1358
1359#if defined(MBEDTLS_SSL_PROTO_TLS1_2)
1360    if( strcmp( "MBEDTLS_SSL_PROTO_TLS1_2", config ) == 0 )
1361    {
1362        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_PROTO_TLS1_2 );
1363        return( 0 );
1364    }
1365#endif /* MBEDTLS_SSL_PROTO_TLS1_2 */
1366
1367#if defined(MBEDTLS_SSL_PROTO_TLS1_3)
1368    if( strcmp( "MBEDTLS_SSL_PROTO_TLS1_3", config ) == 0 )
1369    {
1370        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_PROTO_TLS1_3 );
1371        return( 0 );
1372    }
1373#endif /* MBEDTLS_SSL_PROTO_TLS1_3 */
1374
1375#if defined(MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE)
1376    if( strcmp( "MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE", config ) == 0 )
1377    {
1378        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE );
1379        return( 0 );
1380    }
1381#endif /* MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE */
1382
1383#if defined(MBEDTLS_SSL_TLS1_3_KEY_EXCHANGE_MODE_PSK_ENABLED)
1384    if( strcmp( "MBEDTLS_SSL_TLS1_3_KEY_EXCHANGE_MODE_PSK_ENABLED", config ) == 0 )
1385    {
1386        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_TLS1_3_KEY_EXCHANGE_MODE_PSK_ENABLED );
1387        return( 0 );
1388    }
1389#endif /* MBEDTLS_SSL_TLS1_3_KEY_EXCHANGE_MODE_PSK_ENABLED */
1390
1391#if defined(MBEDTLS_SSL_TLS1_3_KEY_EXCHANGE_MODE_EPHEMERAL_ENABLED)
1392    if( strcmp( "MBEDTLS_SSL_TLS1_3_KEY_EXCHANGE_MODE_EPHEMERAL_ENABLED", config ) == 0 )
1393    {
1394        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_TLS1_3_KEY_EXCHANGE_MODE_EPHEMERAL_ENABLED );
1395        return( 0 );
1396    }
1397#endif /* MBEDTLS_SSL_TLS1_3_KEY_EXCHANGE_MODE_EPHEMERAL_ENABLED */
1398
1399#if defined(MBEDTLS_SSL_TLS1_3_KEY_EXCHANGE_MODE_PSK_EPHEMERAL_ENABLED)
1400    if( strcmp( "MBEDTLS_SSL_TLS1_3_KEY_EXCHANGE_MODE_PSK_EPHEMERAL_ENABLED", config ) == 0 )
1401    {
1402        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_TLS1_3_KEY_EXCHANGE_MODE_PSK_EPHEMERAL_ENABLED );
1403        return( 0 );
1404    }
1405#endif /* MBEDTLS_SSL_TLS1_3_KEY_EXCHANGE_MODE_PSK_EPHEMERAL_ENABLED */
1406
1407#if defined(MBEDTLS_SSL_EARLY_DATA)
1408    if( strcmp( "MBEDTLS_SSL_EARLY_DATA", config ) == 0 )
1409    {
1410        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_EARLY_DATA );
1411        return( 0 );
1412    }
1413#endif /* MBEDTLS_SSL_EARLY_DATA */
1414
1415#if defined(MBEDTLS_SSL_PROTO_DTLS)
1416    if( strcmp( "MBEDTLS_SSL_PROTO_DTLS", config ) == 0 )
1417    {
1418        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_PROTO_DTLS );
1419        return( 0 );
1420    }
1421#endif /* MBEDTLS_SSL_PROTO_DTLS */
1422
1423#if defined(MBEDTLS_SSL_ALPN)
1424    if( strcmp( "MBEDTLS_SSL_ALPN", config ) == 0 )
1425    {
1426        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_ALPN );
1427        return( 0 );
1428    }
1429#endif /* MBEDTLS_SSL_ALPN */
1430
1431#if defined(MBEDTLS_SSL_DTLS_ANTI_REPLAY)
1432    if( strcmp( "MBEDTLS_SSL_DTLS_ANTI_REPLAY", config ) == 0 )
1433    {
1434        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_DTLS_ANTI_REPLAY );
1435        return( 0 );
1436    }
1437#endif /* MBEDTLS_SSL_DTLS_ANTI_REPLAY */
1438
1439#if defined(MBEDTLS_SSL_DTLS_HELLO_VERIFY)
1440    if( strcmp( "MBEDTLS_SSL_DTLS_HELLO_VERIFY", config ) == 0 )
1441    {
1442        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_DTLS_HELLO_VERIFY );
1443        return( 0 );
1444    }
1445#endif /* MBEDTLS_SSL_DTLS_HELLO_VERIFY */
1446
1447#if defined(MBEDTLS_SSL_DTLS_SRTP)
1448    if( strcmp( "MBEDTLS_SSL_DTLS_SRTP", config ) == 0 )
1449    {
1450        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_DTLS_SRTP );
1451        return( 0 );
1452    }
1453#endif /* MBEDTLS_SSL_DTLS_SRTP */
1454
1455#if defined(MBEDTLS_SSL_DTLS_CLIENT_PORT_REUSE)
1456    if( strcmp( "MBEDTLS_SSL_DTLS_CLIENT_PORT_REUSE", config ) == 0 )
1457    {
1458        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_DTLS_CLIENT_PORT_REUSE );
1459        return( 0 );
1460    }
1461#endif /* MBEDTLS_SSL_DTLS_CLIENT_PORT_REUSE */
1462
1463#if defined(MBEDTLS_SSL_SESSION_TICKETS)
1464    if( strcmp( "MBEDTLS_SSL_SESSION_TICKETS", config ) == 0 )
1465    {
1466        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_SESSION_TICKETS );
1467        return( 0 );
1468    }
1469#endif /* MBEDTLS_SSL_SESSION_TICKETS */
1470
1471#if defined(MBEDTLS_SSL_SERVER_NAME_INDICATION)
1472    if( strcmp( "MBEDTLS_SSL_SERVER_NAME_INDICATION", config ) == 0 )
1473    {
1474        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_SERVER_NAME_INDICATION );
1475        return( 0 );
1476    }
1477#endif /* MBEDTLS_SSL_SERVER_NAME_INDICATION */
1478
1479#if defined(MBEDTLS_SSL_VARIABLE_BUFFER_LENGTH)
1480    if( strcmp( "MBEDTLS_SSL_VARIABLE_BUFFER_LENGTH", config ) == 0 )
1481    {
1482        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_VARIABLE_BUFFER_LENGTH );
1483        return( 0 );
1484    }
1485#endif /* MBEDTLS_SSL_VARIABLE_BUFFER_LENGTH */
1486
1487#if defined(MBEDTLS_TEST_CONSTANT_FLOW_MEMSAN)
1488    if( strcmp( "MBEDTLS_TEST_CONSTANT_FLOW_MEMSAN", config ) == 0 )
1489    {
1490        MACRO_EXPANSION_TO_STR( MBEDTLS_TEST_CONSTANT_FLOW_MEMSAN );
1491        return( 0 );
1492    }
1493#endif /* MBEDTLS_TEST_CONSTANT_FLOW_MEMSAN */
1494
1495#if defined(MBEDTLS_TEST_CONSTANT_FLOW_VALGRIND)
1496    if( strcmp( "MBEDTLS_TEST_CONSTANT_FLOW_VALGRIND", config ) == 0 )
1497    {
1498        MACRO_EXPANSION_TO_STR( MBEDTLS_TEST_CONSTANT_FLOW_VALGRIND );
1499        return( 0 );
1500    }
1501#endif /* MBEDTLS_TEST_CONSTANT_FLOW_VALGRIND */
1502
1503#if defined(MBEDTLS_TEST_HOOKS)
1504    if( strcmp( "MBEDTLS_TEST_HOOKS", config ) == 0 )
1505    {
1506        MACRO_EXPANSION_TO_STR( MBEDTLS_TEST_HOOKS );
1507        return( 0 );
1508    }
1509#endif /* MBEDTLS_TEST_HOOKS */
1510
1511#if defined(MBEDTLS_THREADING_ALT)
1512    if( strcmp( "MBEDTLS_THREADING_ALT", config ) == 0 )
1513    {
1514        MACRO_EXPANSION_TO_STR( MBEDTLS_THREADING_ALT );
1515        return( 0 );
1516    }
1517#endif /* MBEDTLS_THREADING_ALT */
1518
1519#if defined(MBEDTLS_THREADING_PTHREAD)
1520    if( strcmp( "MBEDTLS_THREADING_PTHREAD", config ) == 0 )
1521    {
1522        MACRO_EXPANSION_TO_STR( MBEDTLS_THREADING_PTHREAD );
1523        return( 0 );
1524    }
1525#endif /* MBEDTLS_THREADING_PTHREAD */
1526
1527#if defined(MBEDTLS_USE_PSA_CRYPTO)
1528    if( strcmp( "MBEDTLS_USE_PSA_CRYPTO", config ) == 0 )
1529    {
1530        MACRO_EXPANSION_TO_STR( MBEDTLS_USE_PSA_CRYPTO );
1531        return( 0 );
1532    }
1533#endif /* MBEDTLS_USE_PSA_CRYPTO */
1534
1535#if defined(MBEDTLS_PSA_CRYPTO_CONFIG)
1536    if( strcmp( "MBEDTLS_PSA_CRYPTO_CONFIG", config ) == 0 )
1537    {
1538        MACRO_EXPANSION_TO_STR( MBEDTLS_PSA_CRYPTO_CONFIG );
1539        return( 0 );
1540    }
1541#endif /* MBEDTLS_PSA_CRYPTO_CONFIG */
1542
1543#if defined(MBEDTLS_VERSION_FEATURES)
1544    if( strcmp( "MBEDTLS_VERSION_FEATURES", config ) == 0 )
1545    {
1546        MACRO_EXPANSION_TO_STR( MBEDTLS_VERSION_FEATURES );
1547        return( 0 );
1548    }
1549#endif /* MBEDTLS_VERSION_FEATURES */
1550
1551#if defined(MBEDTLS_X509_TRUSTED_CERTIFICATE_CALLBACK)
1552    if( strcmp( "MBEDTLS_X509_TRUSTED_CERTIFICATE_CALLBACK", config ) == 0 )
1553    {
1554        MACRO_EXPANSION_TO_STR( MBEDTLS_X509_TRUSTED_CERTIFICATE_CALLBACK );
1555        return( 0 );
1556    }
1557#endif /* MBEDTLS_X509_TRUSTED_CERTIFICATE_CALLBACK */
1558
1559#if defined(MBEDTLS_X509_REMOVE_INFO)
1560    if( strcmp( "MBEDTLS_X509_REMOVE_INFO", config ) == 0 )
1561    {
1562        MACRO_EXPANSION_TO_STR( MBEDTLS_X509_REMOVE_INFO );
1563        return( 0 );
1564    }
1565#endif /* MBEDTLS_X509_REMOVE_INFO */
1566
1567#if defined(MBEDTLS_X509_RSASSA_PSS_SUPPORT)
1568    if( strcmp( "MBEDTLS_X509_RSASSA_PSS_SUPPORT", config ) == 0 )
1569    {
1570        MACRO_EXPANSION_TO_STR( MBEDTLS_X509_RSASSA_PSS_SUPPORT );
1571        return( 0 );
1572    }
1573#endif /* MBEDTLS_X509_RSASSA_PSS_SUPPORT */
1574
1575#if defined(MBEDTLS_AESNI_C)
1576    if( strcmp( "MBEDTLS_AESNI_C", config ) == 0 )
1577    {
1578        MACRO_EXPANSION_TO_STR( MBEDTLS_AESNI_C );
1579        return( 0 );
1580    }
1581#endif /* MBEDTLS_AESNI_C */
1582
1583#if defined(MBEDTLS_AESCE_C)
1584    if( strcmp( "MBEDTLS_AESCE_C", config ) == 0 )
1585    {
1586        MACRO_EXPANSION_TO_STR( MBEDTLS_AESCE_C );
1587        return( 0 );
1588    }
1589#endif /* MBEDTLS_AESCE_C */
1590
1591#if defined(MBEDTLS_AES_C)
1592    if( strcmp( "MBEDTLS_AES_C", config ) == 0 )
1593    {
1594        MACRO_EXPANSION_TO_STR( MBEDTLS_AES_C );
1595        return( 0 );
1596    }
1597#endif /* MBEDTLS_AES_C */
1598
1599#if defined(MBEDTLS_ASN1_PARSE_C)
1600    if( strcmp( "MBEDTLS_ASN1_PARSE_C", config ) == 0 )
1601    {
1602        MACRO_EXPANSION_TO_STR( MBEDTLS_ASN1_PARSE_C );
1603        return( 0 );
1604    }
1605#endif /* MBEDTLS_ASN1_PARSE_C */
1606
1607#if defined(MBEDTLS_ASN1_WRITE_C)
1608    if( strcmp( "MBEDTLS_ASN1_WRITE_C", config ) == 0 )
1609    {
1610        MACRO_EXPANSION_TO_STR( MBEDTLS_ASN1_WRITE_C );
1611        return( 0 );
1612    }
1613#endif /* MBEDTLS_ASN1_WRITE_C */
1614
1615#if defined(MBEDTLS_BASE64_C)
1616    if( strcmp( "MBEDTLS_BASE64_C", config ) == 0 )
1617    {
1618        MACRO_EXPANSION_TO_STR( MBEDTLS_BASE64_C );
1619        return( 0 );
1620    }
1621#endif /* MBEDTLS_BASE64_C */
1622
1623#if defined(MBEDTLS_BLOCK_CIPHER_NO_DECRYPT)
1624    if( strcmp( "MBEDTLS_BLOCK_CIPHER_NO_DECRYPT", config ) == 0 )
1625    {
1626        MACRO_EXPANSION_TO_STR( MBEDTLS_BLOCK_CIPHER_NO_DECRYPT );
1627        return( 0 );
1628    }
1629#endif /* MBEDTLS_BLOCK_CIPHER_NO_DECRYPT */
1630
1631#if defined(MBEDTLS_BIGNUM_C)
1632    if( strcmp( "MBEDTLS_BIGNUM_C", config ) == 0 )
1633    {
1634        MACRO_EXPANSION_TO_STR( MBEDTLS_BIGNUM_C );
1635        return( 0 );
1636    }
1637#endif /* MBEDTLS_BIGNUM_C */
1638
1639#if defined(MBEDTLS_CAMELLIA_C)
1640    if( strcmp( "MBEDTLS_CAMELLIA_C", config ) == 0 )
1641    {
1642        MACRO_EXPANSION_TO_STR( MBEDTLS_CAMELLIA_C );
1643        return( 0 );
1644    }
1645#endif /* MBEDTLS_CAMELLIA_C */
1646
1647#if defined(MBEDTLS_ARIA_C)
1648    if( strcmp( "MBEDTLS_ARIA_C", config ) == 0 )
1649    {
1650        MACRO_EXPANSION_TO_STR( MBEDTLS_ARIA_C );
1651        return( 0 );
1652    }
1653#endif /* MBEDTLS_ARIA_C */
1654
1655#if defined(MBEDTLS_CCM_C)
1656    if( strcmp( "MBEDTLS_CCM_C", config ) == 0 )
1657    {
1658        MACRO_EXPANSION_TO_STR( MBEDTLS_CCM_C );
1659        return( 0 );
1660    }
1661#endif /* MBEDTLS_CCM_C */
1662
1663#if defined(MBEDTLS_CHACHA20_C)
1664    if( strcmp( "MBEDTLS_CHACHA20_C", config ) == 0 )
1665    {
1666        MACRO_EXPANSION_TO_STR( MBEDTLS_CHACHA20_C );
1667        return( 0 );
1668    }
1669#endif /* MBEDTLS_CHACHA20_C */
1670
1671#if defined(MBEDTLS_CHACHAPOLY_C)
1672    if( strcmp( "MBEDTLS_CHACHAPOLY_C", config ) == 0 )
1673    {
1674        MACRO_EXPANSION_TO_STR( MBEDTLS_CHACHAPOLY_C );
1675        return( 0 );
1676    }
1677#endif /* MBEDTLS_CHACHAPOLY_C */
1678
1679#if defined(MBEDTLS_CIPHER_C)
1680    if( strcmp( "MBEDTLS_CIPHER_C", config ) == 0 )
1681    {
1682        MACRO_EXPANSION_TO_STR( MBEDTLS_CIPHER_C );
1683        return( 0 );
1684    }
1685#endif /* MBEDTLS_CIPHER_C */
1686
1687#if defined(MBEDTLS_CMAC_C)
1688    if( strcmp( "MBEDTLS_CMAC_C", config ) == 0 )
1689    {
1690        MACRO_EXPANSION_TO_STR( MBEDTLS_CMAC_C );
1691        return( 0 );
1692    }
1693#endif /* MBEDTLS_CMAC_C */
1694
1695#if defined(MBEDTLS_CTR_DRBG_C)
1696    if( strcmp( "MBEDTLS_CTR_DRBG_C", config ) == 0 )
1697    {
1698        MACRO_EXPANSION_TO_STR( MBEDTLS_CTR_DRBG_C );
1699        return( 0 );
1700    }
1701#endif /* MBEDTLS_CTR_DRBG_C */
1702
1703#if defined(MBEDTLS_DEBUG_C)
1704    if( strcmp( "MBEDTLS_DEBUG_C", config ) == 0 )
1705    {
1706        MACRO_EXPANSION_TO_STR( MBEDTLS_DEBUG_C );
1707        return( 0 );
1708    }
1709#endif /* MBEDTLS_DEBUG_C */
1710
1711#if defined(MBEDTLS_DES_C)
1712    if( strcmp( "MBEDTLS_DES_C", config ) == 0 )
1713    {
1714        MACRO_EXPANSION_TO_STR( MBEDTLS_DES_C );
1715        return( 0 );
1716    }
1717#endif /* MBEDTLS_DES_C */
1718
1719#if defined(MBEDTLS_DHM_C)
1720    if( strcmp( "MBEDTLS_DHM_C", config ) == 0 )
1721    {
1722        MACRO_EXPANSION_TO_STR( MBEDTLS_DHM_C );
1723        return( 0 );
1724    }
1725#endif /* MBEDTLS_DHM_C */
1726
1727#if defined(MBEDTLS_ECDH_C)
1728    if( strcmp( "MBEDTLS_ECDH_C", config ) == 0 )
1729    {
1730        MACRO_EXPANSION_TO_STR( MBEDTLS_ECDH_C );
1731        return( 0 );
1732    }
1733#endif /* MBEDTLS_ECDH_C */
1734
1735#if defined(MBEDTLS_ECDSA_C)
1736    if( strcmp( "MBEDTLS_ECDSA_C", config ) == 0 )
1737    {
1738        MACRO_EXPANSION_TO_STR( MBEDTLS_ECDSA_C );
1739        return( 0 );
1740    }
1741#endif /* MBEDTLS_ECDSA_C */
1742
1743#if defined(MBEDTLS_ECJPAKE_C)
1744    if( strcmp( "MBEDTLS_ECJPAKE_C", config ) == 0 )
1745    {
1746        MACRO_EXPANSION_TO_STR( MBEDTLS_ECJPAKE_C );
1747        return( 0 );
1748    }
1749#endif /* MBEDTLS_ECJPAKE_C */
1750
1751#if defined(MBEDTLS_ECP_C)
1752    if( strcmp( "MBEDTLS_ECP_C", config ) == 0 )
1753    {
1754        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_C );
1755        return( 0 );
1756    }
1757#endif /* MBEDTLS_ECP_C */
1758
1759#if defined(MBEDTLS_ENTROPY_C)
1760    if( strcmp( "MBEDTLS_ENTROPY_C", config ) == 0 )
1761    {
1762        MACRO_EXPANSION_TO_STR( MBEDTLS_ENTROPY_C );
1763        return( 0 );
1764    }
1765#endif /* MBEDTLS_ENTROPY_C */
1766
1767#if defined(MBEDTLS_ERROR_C)
1768    if( strcmp( "MBEDTLS_ERROR_C", config ) == 0 )
1769    {
1770        MACRO_EXPANSION_TO_STR( MBEDTLS_ERROR_C );
1771        return( 0 );
1772    }
1773#endif /* MBEDTLS_ERROR_C */
1774
1775#if defined(MBEDTLS_GCM_C)
1776    if( strcmp( "MBEDTLS_GCM_C", config ) == 0 )
1777    {
1778        MACRO_EXPANSION_TO_STR( MBEDTLS_GCM_C );
1779        return( 0 );
1780    }
1781#endif /* MBEDTLS_GCM_C */
1782
1783#if defined(MBEDTLS_GCM_LARGE_TABLE)
1784    if( strcmp( "MBEDTLS_GCM_LARGE_TABLE", config ) == 0 )
1785    {
1786        MACRO_EXPANSION_TO_STR( MBEDTLS_GCM_LARGE_TABLE );
1787        return( 0 );
1788    }
1789#endif /* MBEDTLS_GCM_LARGE_TABLE */
1790
1791#if defined(MBEDTLS_HKDF_C)
1792    if( strcmp( "MBEDTLS_HKDF_C", config ) == 0 )
1793    {
1794        MACRO_EXPANSION_TO_STR( MBEDTLS_HKDF_C );
1795        return( 0 );
1796    }
1797#endif /* MBEDTLS_HKDF_C */
1798
1799#if defined(MBEDTLS_HMAC_DRBG_C)
1800    if( strcmp( "MBEDTLS_HMAC_DRBG_C", config ) == 0 )
1801    {
1802        MACRO_EXPANSION_TO_STR( MBEDTLS_HMAC_DRBG_C );
1803        return( 0 );
1804    }
1805#endif /* MBEDTLS_HMAC_DRBG_C */
1806
1807#if defined(MBEDTLS_LMS_C)
1808    if( strcmp( "MBEDTLS_LMS_C", config ) == 0 )
1809    {
1810        MACRO_EXPANSION_TO_STR( MBEDTLS_LMS_C );
1811        return( 0 );
1812    }
1813#endif /* MBEDTLS_LMS_C */
1814
1815#if defined(MBEDTLS_LMS_PRIVATE)
1816    if( strcmp( "MBEDTLS_LMS_PRIVATE", config ) == 0 )
1817    {
1818        MACRO_EXPANSION_TO_STR( MBEDTLS_LMS_PRIVATE );
1819        return( 0 );
1820    }
1821#endif /* MBEDTLS_LMS_PRIVATE */
1822
1823#if defined(MBEDTLS_NIST_KW_C)
1824    if( strcmp( "MBEDTLS_NIST_KW_C", config ) == 0 )
1825    {
1826        MACRO_EXPANSION_TO_STR( MBEDTLS_NIST_KW_C );
1827        return( 0 );
1828    }
1829#endif /* MBEDTLS_NIST_KW_C */
1830
1831#if defined(MBEDTLS_MD_C)
1832    if( strcmp( "MBEDTLS_MD_C", config ) == 0 )
1833    {
1834        MACRO_EXPANSION_TO_STR( MBEDTLS_MD_C );
1835        return( 0 );
1836    }
1837#endif /* MBEDTLS_MD_C */
1838
1839#if defined(MBEDTLS_MD5_C)
1840    if( strcmp( "MBEDTLS_MD5_C", config ) == 0 )
1841    {
1842        MACRO_EXPANSION_TO_STR( MBEDTLS_MD5_C );
1843        return( 0 );
1844    }
1845#endif /* MBEDTLS_MD5_C */
1846
1847#if defined(MBEDTLS_MEMORY_BUFFER_ALLOC_C)
1848    if( strcmp( "MBEDTLS_MEMORY_BUFFER_ALLOC_C", config ) == 0 )
1849    {
1850        MACRO_EXPANSION_TO_STR( MBEDTLS_MEMORY_BUFFER_ALLOC_C );
1851        return( 0 );
1852    }
1853#endif /* MBEDTLS_MEMORY_BUFFER_ALLOC_C */
1854
1855#if defined(MBEDTLS_NET_C)
1856    if( strcmp( "MBEDTLS_NET_C", config ) == 0 )
1857    {
1858        MACRO_EXPANSION_TO_STR( MBEDTLS_NET_C );
1859        return( 0 );
1860    }
1861#endif /* MBEDTLS_NET_C */
1862
1863#if defined(MBEDTLS_OID_C)
1864    if( strcmp( "MBEDTLS_OID_C", config ) == 0 )
1865    {
1866        MACRO_EXPANSION_TO_STR( MBEDTLS_OID_C );
1867        return( 0 );
1868    }
1869#endif /* MBEDTLS_OID_C */
1870
1871#if defined(MBEDTLS_PADLOCK_C)
1872    if( strcmp( "MBEDTLS_PADLOCK_C", config ) == 0 )
1873    {
1874        MACRO_EXPANSION_TO_STR( MBEDTLS_PADLOCK_C );
1875        return( 0 );
1876    }
1877#endif /* MBEDTLS_PADLOCK_C */
1878
1879#if defined(MBEDTLS_PEM_PARSE_C)
1880    if( strcmp( "MBEDTLS_PEM_PARSE_C", config ) == 0 )
1881    {
1882        MACRO_EXPANSION_TO_STR( MBEDTLS_PEM_PARSE_C );
1883        return( 0 );
1884    }
1885#endif /* MBEDTLS_PEM_PARSE_C */
1886
1887#if defined(MBEDTLS_PEM_WRITE_C)
1888    if( strcmp( "MBEDTLS_PEM_WRITE_C", config ) == 0 )
1889    {
1890        MACRO_EXPANSION_TO_STR( MBEDTLS_PEM_WRITE_C );
1891        return( 0 );
1892    }
1893#endif /* MBEDTLS_PEM_WRITE_C */
1894
1895#if defined(MBEDTLS_PK_C)
1896    if( strcmp( "MBEDTLS_PK_C", config ) == 0 )
1897    {
1898        MACRO_EXPANSION_TO_STR( MBEDTLS_PK_C );
1899        return( 0 );
1900    }
1901#endif /* MBEDTLS_PK_C */
1902
1903#if defined(MBEDTLS_PK_PARSE_C)
1904    if( strcmp( "MBEDTLS_PK_PARSE_C", config ) == 0 )
1905    {
1906        MACRO_EXPANSION_TO_STR( MBEDTLS_PK_PARSE_C );
1907        return( 0 );
1908    }
1909#endif /* MBEDTLS_PK_PARSE_C */
1910
1911#if defined(MBEDTLS_PK_WRITE_C)
1912    if( strcmp( "MBEDTLS_PK_WRITE_C", config ) == 0 )
1913    {
1914        MACRO_EXPANSION_TO_STR( MBEDTLS_PK_WRITE_C );
1915        return( 0 );
1916    }
1917#endif /* MBEDTLS_PK_WRITE_C */
1918
1919#if defined(MBEDTLS_PKCS5_C)
1920    if( strcmp( "MBEDTLS_PKCS5_C", config ) == 0 )
1921    {
1922        MACRO_EXPANSION_TO_STR( MBEDTLS_PKCS5_C );
1923        return( 0 );
1924    }
1925#endif /* MBEDTLS_PKCS5_C */
1926
1927#if defined(MBEDTLS_PKCS7_C)
1928    if( strcmp( "MBEDTLS_PKCS7_C", config ) == 0 )
1929    {
1930        MACRO_EXPANSION_TO_STR( MBEDTLS_PKCS7_C );
1931        return( 0 );
1932    }
1933#endif /* MBEDTLS_PKCS7_C */
1934
1935#if defined(MBEDTLS_PKCS12_C)
1936    if( strcmp( "MBEDTLS_PKCS12_C", config ) == 0 )
1937    {
1938        MACRO_EXPANSION_TO_STR( MBEDTLS_PKCS12_C );
1939        return( 0 );
1940    }
1941#endif /* MBEDTLS_PKCS12_C */
1942
1943#if defined(MBEDTLS_PLATFORM_C)
1944    if( strcmp( "MBEDTLS_PLATFORM_C", config ) == 0 )
1945    {
1946        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_C );
1947        return( 0 );
1948    }
1949#endif /* MBEDTLS_PLATFORM_C */
1950
1951#if defined(MBEDTLS_POLY1305_C)
1952    if( strcmp( "MBEDTLS_POLY1305_C", config ) == 0 )
1953    {
1954        MACRO_EXPANSION_TO_STR( MBEDTLS_POLY1305_C );
1955        return( 0 );
1956    }
1957#endif /* MBEDTLS_POLY1305_C */
1958
1959#if defined(MBEDTLS_PSA_CRYPTO_C)
1960    if( strcmp( "MBEDTLS_PSA_CRYPTO_C", config ) == 0 )
1961    {
1962        MACRO_EXPANSION_TO_STR( MBEDTLS_PSA_CRYPTO_C );
1963        return( 0 );
1964    }
1965#endif /* MBEDTLS_PSA_CRYPTO_C */
1966
1967#if defined(MBEDTLS_PSA_CRYPTO_SE_C)
1968    if( strcmp( "MBEDTLS_PSA_CRYPTO_SE_C", config ) == 0 )
1969    {
1970        MACRO_EXPANSION_TO_STR( MBEDTLS_PSA_CRYPTO_SE_C );
1971        return( 0 );
1972    }
1973#endif /* MBEDTLS_PSA_CRYPTO_SE_C */
1974
1975#if defined(MBEDTLS_PSA_CRYPTO_STORAGE_C)
1976    if( strcmp( "MBEDTLS_PSA_CRYPTO_STORAGE_C", config ) == 0 )
1977    {
1978        MACRO_EXPANSION_TO_STR( MBEDTLS_PSA_CRYPTO_STORAGE_C );
1979        return( 0 );
1980    }
1981#endif /* MBEDTLS_PSA_CRYPTO_STORAGE_C */
1982
1983#if defined(MBEDTLS_PSA_ITS_FILE_C)
1984    if( strcmp( "MBEDTLS_PSA_ITS_FILE_C", config ) == 0 )
1985    {
1986        MACRO_EXPANSION_TO_STR( MBEDTLS_PSA_ITS_FILE_C );
1987        return( 0 );
1988    }
1989#endif /* MBEDTLS_PSA_ITS_FILE_C */
1990
1991#if defined(MBEDTLS_RIPEMD160_C)
1992    if( strcmp( "MBEDTLS_RIPEMD160_C", config ) == 0 )
1993    {
1994        MACRO_EXPANSION_TO_STR( MBEDTLS_RIPEMD160_C );
1995        return( 0 );
1996    }
1997#endif /* MBEDTLS_RIPEMD160_C */
1998
1999#if defined(MBEDTLS_RSA_C)
2000    if( strcmp( "MBEDTLS_RSA_C", config ) == 0 )
2001    {
2002        MACRO_EXPANSION_TO_STR( MBEDTLS_RSA_C );
2003        return( 0 );
2004    }
2005#endif /* MBEDTLS_RSA_C */
2006
2007#if defined(MBEDTLS_SHA1_C)
2008    if( strcmp( "MBEDTLS_SHA1_C", config ) == 0 )
2009    {
2010        MACRO_EXPANSION_TO_STR( MBEDTLS_SHA1_C );
2011        return( 0 );
2012    }
2013#endif /* MBEDTLS_SHA1_C */
2014
2015#if defined(MBEDTLS_SHA224_C)
2016    if( strcmp( "MBEDTLS_SHA224_C", config ) == 0 )
2017    {
2018        MACRO_EXPANSION_TO_STR( MBEDTLS_SHA224_C );
2019        return( 0 );
2020    }
2021#endif /* MBEDTLS_SHA224_C */
2022
2023#if defined(MBEDTLS_SHA256_C)
2024    if( strcmp( "MBEDTLS_SHA256_C", config ) == 0 )
2025    {
2026        MACRO_EXPANSION_TO_STR( MBEDTLS_SHA256_C );
2027        return( 0 );
2028    }
2029#endif /* MBEDTLS_SHA256_C */
2030
2031#if defined(MBEDTLS_SHA256_USE_ARMV8_A_CRYPTO_IF_PRESENT)
2032    if( strcmp( "MBEDTLS_SHA256_USE_ARMV8_A_CRYPTO_IF_PRESENT", config ) == 0 )
2033    {
2034        MACRO_EXPANSION_TO_STR( MBEDTLS_SHA256_USE_ARMV8_A_CRYPTO_IF_PRESENT );
2035        return( 0 );
2036    }
2037#endif /* MBEDTLS_SHA256_USE_ARMV8_A_CRYPTO_IF_PRESENT */
2038
2039#if defined(MBEDTLS_SHA256_USE_A64_CRYPTO_IF_PRESENT)
2040    if( strcmp( "MBEDTLS_SHA256_USE_A64_CRYPTO_IF_PRESENT", config ) == 0 )
2041    {
2042        MACRO_EXPANSION_TO_STR( MBEDTLS_SHA256_USE_A64_CRYPTO_IF_PRESENT );
2043        return( 0 );
2044    }
2045#endif /* MBEDTLS_SHA256_USE_A64_CRYPTO_IF_PRESENT */
2046
2047#if defined(MBEDTLS_SHA256_USE_ARMV8_A_CRYPTO_ONLY)
2048    if( strcmp( "MBEDTLS_SHA256_USE_ARMV8_A_CRYPTO_ONLY", config ) == 0 )
2049    {
2050        MACRO_EXPANSION_TO_STR( MBEDTLS_SHA256_USE_ARMV8_A_CRYPTO_ONLY );
2051        return( 0 );
2052    }
2053#endif /* MBEDTLS_SHA256_USE_ARMV8_A_CRYPTO_ONLY */
2054
2055#if defined(MBEDTLS_SHA256_USE_A64_CRYPTO_ONLY)
2056    if( strcmp( "MBEDTLS_SHA256_USE_A64_CRYPTO_ONLY", config ) == 0 )
2057    {
2058        MACRO_EXPANSION_TO_STR( MBEDTLS_SHA256_USE_A64_CRYPTO_ONLY );
2059        return( 0 );
2060    }
2061#endif /* MBEDTLS_SHA256_USE_A64_CRYPTO_ONLY */
2062
2063#if defined(MBEDTLS_SHA384_C)
2064    if( strcmp( "MBEDTLS_SHA384_C", config ) == 0 )
2065    {
2066        MACRO_EXPANSION_TO_STR( MBEDTLS_SHA384_C );
2067        return( 0 );
2068    }
2069#endif /* MBEDTLS_SHA384_C */
2070
2071#if defined(MBEDTLS_SHA512_C)
2072    if( strcmp( "MBEDTLS_SHA512_C", config ) == 0 )
2073    {
2074        MACRO_EXPANSION_TO_STR( MBEDTLS_SHA512_C );
2075        return( 0 );
2076    }
2077#endif /* MBEDTLS_SHA512_C */
2078
2079#if defined(MBEDTLS_SHA3_C)
2080    if( strcmp( "MBEDTLS_SHA3_C", config ) == 0 )
2081    {
2082        MACRO_EXPANSION_TO_STR( MBEDTLS_SHA3_C );
2083        return( 0 );
2084    }
2085#endif /* MBEDTLS_SHA3_C */
2086
2087#if defined(MBEDTLS_SHA512_USE_A64_CRYPTO_IF_PRESENT)
2088    if( strcmp( "MBEDTLS_SHA512_USE_A64_CRYPTO_IF_PRESENT", config ) == 0 )
2089    {
2090        MACRO_EXPANSION_TO_STR( MBEDTLS_SHA512_USE_A64_CRYPTO_IF_PRESENT );
2091        return( 0 );
2092    }
2093#endif /* MBEDTLS_SHA512_USE_A64_CRYPTO_IF_PRESENT */
2094
2095#if defined(MBEDTLS_SHA512_USE_A64_CRYPTO_ONLY)
2096    if( strcmp( "MBEDTLS_SHA512_USE_A64_CRYPTO_ONLY", config ) == 0 )
2097    {
2098        MACRO_EXPANSION_TO_STR( MBEDTLS_SHA512_USE_A64_CRYPTO_ONLY );
2099        return( 0 );
2100    }
2101#endif /* MBEDTLS_SHA512_USE_A64_CRYPTO_ONLY */
2102
2103#if defined(MBEDTLS_SSL_CACHE_C)
2104    if( strcmp( "MBEDTLS_SSL_CACHE_C", config ) == 0 )
2105    {
2106        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_CACHE_C );
2107        return( 0 );
2108    }
2109#endif /* MBEDTLS_SSL_CACHE_C */
2110
2111#if defined(MBEDTLS_SSL_COOKIE_C)
2112    if( strcmp( "MBEDTLS_SSL_COOKIE_C", config ) == 0 )
2113    {
2114        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_COOKIE_C );
2115        return( 0 );
2116    }
2117#endif /* MBEDTLS_SSL_COOKIE_C */
2118
2119#if defined(MBEDTLS_SSL_TICKET_C)
2120    if( strcmp( "MBEDTLS_SSL_TICKET_C", config ) == 0 )
2121    {
2122        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_TICKET_C );
2123        return( 0 );
2124    }
2125#endif /* MBEDTLS_SSL_TICKET_C */
2126
2127#if defined(MBEDTLS_SSL_CLI_C)
2128    if( strcmp( "MBEDTLS_SSL_CLI_C", config ) == 0 )
2129    {
2130        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_CLI_C );
2131        return( 0 );
2132    }
2133#endif /* MBEDTLS_SSL_CLI_C */
2134
2135#if defined(MBEDTLS_SSL_SRV_C)
2136    if( strcmp( "MBEDTLS_SSL_SRV_C", config ) == 0 )
2137    {
2138        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_SRV_C );
2139        return( 0 );
2140    }
2141#endif /* MBEDTLS_SSL_SRV_C */
2142
2143#if defined(MBEDTLS_SSL_TLS_C)
2144    if( strcmp( "MBEDTLS_SSL_TLS_C", config ) == 0 )
2145    {
2146        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_TLS_C );
2147        return( 0 );
2148    }
2149#endif /* MBEDTLS_SSL_TLS_C */
2150
2151#if defined(MBEDTLS_THREADING_C)
2152    if( strcmp( "MBEDTLS_THREADING_C", config ) == 0 )
2153    {
2154        MACRO_EXPANSION_TO_STR( MBEDTLS_THREADING_C );
2155        return( 0 );
2156    }
2157#endif /* MBEDTLS_THREADING_C */
2158
2159#if defined(MBEDTLS_TIMING_C)
2160    if( strcmp( "MBEDTLS_TIMING_C", config ) == 0 )
2161    {
2162        MACRO_EXPANSION_TO_STR( MBEDTLS_TIMING_C );
2163        return( 0 );
2164    }
2165#endif /* MBEDTLS_TIMING_C */
2166
2167#if defined(MBEDTLS_VERSION_C)
2168    if( strcmp( "MBEDTLS_VERSION_C", config ) == 0 )
2169    {
2170        MACRO_EXPANSION_TO_STR( MBEDTLS_VERSION_C );
2171        return( 0 );
2172    }
2173#endif /* MBEDTLS_VERSION_C */
2174
2175#if defined(MBEDTLS_X509_USE_C)
2176    if( strcmp( "MBEDTLS_X509_USE_C", config ) == 0 )
2177    {
2178        MACRO_EXPANSION_TO_STR( MBEDTLS_X509_USE_C );
2179        return( 0 );
2180    }
2181#endif /* MBEDTLS_X509_USE_C */
2182
2183#if defined(MBEDTLS_X509_CRT_PARSE_C)
2184    if( strcmp( "MBEDTLS_X509_CRT_PARSE_C", config ) == 0 )
2185    {
2186        MACRO_EXPANSION_TO_STR( MBEDTLS_X509_CRT_PARSE_C );
2187        return( 0 );
2188    }
2189#endif /* MBEDTLS_X509_CRT_PARSE_C */
2190
2191#if defined(MBEDTLS_X509_CRL_PARSE_C)
2192    if( strcmp( "MBEDTLS_X509_CRL_PARSE_C", config ) == 0 )
2193    {
2194        MACRO_EXPANSION_TO_STR( MBEDTLS_X509_CRL_PARSE_C );
2195        return( 0 );
2196    }
2197#endif /* MBEDTLS_X509_CRL_PARSE_C */
2198
2199#if defined(MBEDTLS_X509_CSR_PARSE_C)
2200    if( strcmp( "MBEDTLS_X509_CSR_PARSE_C", config ) == 0 )
2201    {
2202        MACRO_EXPANSION_TO_STR( MBEDTLS_X509_CSR_PARSE_C );
2203        return( 0 );
2204    }
2205#endif /* MBEDTLS_X509_CSR_PARSE_C */
2206
2207#if defined(MBEDTLS_X509_CREATE_C)
2208    if( strcmp( "MBEDTLS_X509_CREATE_C", config ) == 0 )
2209    {
2210        MACRO_EXPANSION_TO_STR( MBEDTLS_X509_CREATE_C );
2211        return( 0 );
2212    }
2213#endif /* MBEDTLS_X509_CREATE_C */
2214
2215#if defined(MBEDTLS_X509_CRT_WRITE_C)
2216    if( strcmp( "MBEDTLS_X509_CRT_WRITE_C", config ) == 0 )
2217    {
2218        MACRO_EXPANSION_TO_STR( MBEDTLS_X509_CRT_WRITE_C );
2219        return( 0 );
2220    }
2221#endif /* MBEDTLS_X509_CRT_WRITE_C */
2222
2223#if defined(MBEDTLS_X509_CSR_WRITE_C)
2224    if( strcmp( "MBEDTLS_X509_CSR_WRITE_C", config ) == 0 )
2225    {
2226        MACRO_EXPANSION_TO_STR( MBEDTLS_X509_CSR_WRITE_C );
2227        return( 0 );
2228    }
2229#endif /* MBEDTLS_X509_CSR_WRITE_C */
2230
2231#if defined(MBEDTLS_CONFIG_FILE)
2232    if( strcmp( "MBEDTLS_CONFIG_FILE", config ) == 0 )
2233    {
2234        MACRO_EXPANSION_TO_STR( MBEDTLS_CONFIG_FILE );
2235        return( 0 );
2236    }
2237#endif /* MBEDTLS_CONFIG_FILE */
2238
2239#if defined(MBEDTLS_USER_CONFIG_FILE)
2240    if( strcmp( "MBEDTLS_USER_CONFIG_FILE", config ) == 0 )
2241    {
2242        MACRO_EXPANSION_TO_STR( MBEDTLS_USER_CONFIG_FILE );
2243        return( 0 );
2244    }
2245#endif /* MBEDTLS_USER_CONFIG_FILE */
2246
2247#if defined(MBEDTLS_PSA_CRYPTO_CONFIG_FILE)
2248    if( strcmp( "MBEDTLS_PSA_CRYPTO_CONFIG_FILE", config ) == 0 )
2249    {
2250        MACRO_EXPANSION_TO_STR( MBEDTLS_PSA_CRYPTO_CONFIG_FILE );
2251        return( 0 );
2252    }
2253#endif /* MBEDTLS_PSA_CRYPTO_CONFIG_FILE */
2254
2255#if defined(MBEDTLS_PSA_CRYPTO_USER_CONFIG_FILE)
2256    if( strcmp( "MBEDTLS_PSA_CRYPTO_USER_CONFIG_FILE", config ) == 0 )
2257    {
2258        MACRO_EXPANSION_TO_STR( MBEDTLS_PSA_CRYPTO_USER_CONFIG_FILE );
2259        return( 0 );
2260    }
2261#endif /* MBEDTLS_PSA_CRYPTO_USER_CONFIG_FILE */
2262
2263#if defined(MBEDTLS_PSA_CRYPTO_PLATFORM_FILE)
2264    if( strcmp( "MBEDTLS_PSA_CRYPTO_PLATFORM_FILE", config ) == 0 )
2265    {
2266        MACRO_EXPANSION_TO_STR( MBEDTLS_PSA_CRYPTO_PLATFORM_FILE );
2267        return( 0 );
2268    }
2269#endif /* MBEDTLS_PSA_CRYPTO_PLATFORM_FILE */
2270
2271#if defined(MBEDTLS_PSA_CRYPTO_STRUCT_FILE)
2272    if( strcmp( "MBEDTLS_PSA_CRYPTO_STRUCT_FILE", config ) == 0 )
2273    {
2274        MACRO_EXPANSION_TO_STR( MBEDTLS_PSA_CRYPTO_STRUCT_FILE );
2275        return( 0 );
2276    }
2277#endif /* MBEDTLS_PSA_CRYPTO_STRUCT_FILE */
2278
2279#if defined(MBEDTLS_MPI_WINDOW_SIZE)
2280    if( strcmp( "MBEDTLS_MPI_WINDOW_SIZE", config ) == 0 )
2281    {
2282        MACRO_EXPANSION_TO_STR( MBEDTLS_MPI_WINDOW_SIZE );
2283        return( 0 );
2284    }
2285#endif /* MBEDTLS_MPI_WINDOW_SIZE */
2286
2287#if defined(MBEDTLS_MPI_MAX_SIZE)
2288    if( strcmp( "MBEDTLS_MPI_MAX_SIZE", config ) == 0 )
2289    {
2290        MACRO_EXPANSION_TO_STR( MBEDTLS_MPI_MAX_SIZE );
2291        return( 0 );
2292    }
2293#endif /* MBEDTLS_MPI_MAX_SIZE */
2294
2295#if defined(MBEDTLS_CTR_DRBG_ENTROPY_LEN)
2296    if( strcmp( "MBEDTLS_CTR_DRBG_ENTROPY_LEN", config ) == 0 )
2297    {
2298        MACRO_EXPANSION_TO_STR( MBEDTLS_CTR_DRBG_ENTROPY_LEN );
2299        return( 0 );
2300    }
2301#endif /* MBEDTLS_CTR_DRBG_ENTROPY_LEN */
2302
2303#if defined(MBEDTLS_CTR_DRBG_RESEED_INTERVAL)
2304    if( strcmp( "MBEDTLS_CTR_DRBG_RESEED_INTERVAL", config ) == 0 )
2305    {
2306        MACRO_EXPANSION_TO_STR( MBEDTLS_CTR_DRBG_RESEED_INTERVAL );
2307        return( 0 );
2308    }
2309#endif /* MBEDTLS_CTR_DRBG_RESEED_INTERVAL */
2310
2311#if defined(MBEDTLS_CTR_DRBG_MAX_INPUT)
2312    if( strcmp( "MBEDTLS_CTR_DRBG_MAX_INPUT", config ) == 0 )
2313    {
2314        MACRO_EXPANSION_TO_STR( MBEDTLS_CTR_DRBG_MAX_INPUT );
2315        return( 0 );
2316    }
2317#endif /* MBEDTLS_CTR_DRBG_MAX_INPUT */
2318
2319#if defined(MBEDTLS_CTR_DRBG_MAX_REQUEST)
2320    if( strcmp( "MBEDTLS_CTR_DRBG_MAX_REQUEST", config ) == 0 )
2321    {
2322        MACRO_EXPANSION_TO_STR( MBEDTLS_CTR_DRBG_MAX_REQUEST );
2323        return( 0 );
2324    }
2325#endif /* MBEDTLS_CTR_DRBG_MAX_REQUEST */
2326
2327#if defined(MBEDTLS_CTR_DRBG_MAX_SEED_INPUT)
2328    if( strcmp( "MBEDTLS_CTR_DRBG_MAX_SEED_INPUT", config ) == 0 )
2329    {
2330        MACRO_EXPANSION_TO_STR( MBEDTLS_CTR_DRBG_MAX_SEED_INPUT );
2331        return( 0 );
2332    }
2333#endif /* MBEDTLS_CTR_DRBG_MAX_SEED_INPUT */
2334
2335#if defined(MBEDTLS_HMAC_DRBG_RESEED_INTERVAL)
2336    if( strcmp( "MBEDTLS_HMAC_DRBG_RESEED_INTERVAL", config ) == 0 )
2337    {
2338        MACRO_EXPANSION_TO_STR( MBEDTLS_HMAC_DRBG_RESEED_INTERVAL );
2339        return( 0 );
2340    }
2341#endif /* MBEDTLS_HMAC_DRBG_RESEED_INTERVAL */
2342
2343#if defined(MBEDTLS_HMAC_DRBG_MAX_INPUT)
2344    if( strcmp( "MBEDTLS_HMAC_DRBG_MAX_INPUT", config ) == 0 )
2345    {
2346        MACRO_EXPANSION_TO_STR( MBEDTLS_HMAC_DRBG_MAX_INPUT );
2347        return( 0 );
2348    }
2349#endif /* MBEDTLS_HMAC_DRBG_MAX_INPUT */
2350
2351#if defined(MBEDTLS_HMAC_DRBG_MAX_REQUEST)
2352    if( strcmp( "MBEDTLS_HMAC_DRBG_MAX_REQUEST", config ) == 0 )
2353    {
2354        MACRO_EXPANSION_TO_STR( MBEDTLS_HMAC_DRBG_MAX_REQUEST );
2355        return( 0 );
2356    }
2357#endif /* MBEDTLS_HMAC_DRBG_MAX_REQUEST */
2358
2359#if defined(MBEDTLS_HMAC_DRBG_MAX_SEED_INPUT)
2360    if( strcmp( "MBEDTLS_HMAC_DRBG_MAX_SEED_INPUT", config ) == 0 )
2361    {
2362        MACRO_EXPANSION_TO_STR( MBEDTLS_HMAC_DRBG_MAX_SEED_INPUT );
2363        return( 0 );
2364    }
2365#endif /* MBEDTLS_HMAC_DRBG_MAX_SEED_INPUT */
2366
2367#if defined(MBEDTLS_ECP_WINDOW_SIZE)
2368    if( strcmp( "MBEDTLS_ECP_WINDOW_SIZE", config ) == 0 )
2369    {
2370        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_WINDOW_SIZE );
2371        return( 0 );
2372    }
2373#endif /* MBEDTLS_ECP_WINDOW_SIZE */
2374
2375#if defined(MBEDTLS_ECP_FIXED_POINT_OPTIM)
2376    if( strcmp( "MBEDTLS_ECP_FIXED_POINT_OPTIM", config ) == 0 )
2377    {
2378        MACRO_EXPANSION_TO_STR( MBEDTLS_ECP_FIXED_POINT_OPTIM );
2379        return( 0 );
2380    }
2381#endif /* MBEDTLS_ECP_FIXED_POINT_OPTIM */
2382
2383#if defined(MBEDTLS_ENTROPY_MAX_SOURCES)
2384    if( strcmp( "MBEDTLS_ENTROPY_MAX_SOURCES", config ) == 0 )
2385    {
2386        MACRO_EXPANSION_TO_STR( MBEDTLS_ENTROPY_MAX_SOURCES );
2387        return( 0 );
2388    }
2389#endif /* MBEDTLS_ENTROPY_MAX_SOURCES */
2390
2391#if defined(MBEDTLS_ENTROPY_MAX_GATHER)
2392    if( strcmp( "MBEDTLS_ENTROPY_MAX_GATHER", config ) == 0 )
2393    {
2394        MACRO_EXPANSION_TO_STR( MBEDTLS_ENTROPY_MAX_GATHER );
2395        return( 0 );
2396    }
2397#endif /* MBEDTLS_ENTROPY_MAX_GATHER */
2398
2399#if defined(MBEDTLS_ENTROPY_MIN_HARDWARE)
2400    if( strcmp( "MBEDTLS_ENTROPY_MIN_HARDWARE", config ) == 0 )
2401    {
2402        MACRO_EXPANSION_TO_STR( MBEDTLS_ENTROPY_MIN_HARDWARE );
2403        return( 0 );
2404    }
2405#endif /* MBEDTLS_ENTROPY_MIN_HARDWARE */
2406
2407#if defined(MBEDTLS_MEMORY_ALIGN_MULTIPLE)
2408    if( strcmp( "MBEDTLS_MEMORY_ALIGN_MULTIPLE", config ) == 0 )
2409    {
2410        MACRO_EXPANSION_TO_STR( MBEDTLS_MEMORY_ALIGN_MULTIPLE );
2411        return( 0 );
2412    }
2413#endif /* MBEDTLS_MEMORY_ALIGN_MULTIPLE */
2414
2415#if defined(MBEDTLS_PLATFORM_STD_MEM_HDR)
2416    if( strcmp( "MBEDTLS_PLATFORM_STD_MEM_HDR", config ) == 0 )
2417    {
2418        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_STD_MEM_HDR );
2419        return( 0 );
2420    }
2421#endif /* MBEDTLS_PLATFORM_STD_MEM_HDR */
2422
2423#if defined(MBEDTLS_PLATFORM_STD_CALLOC)
2424    if( strcmp( "MBEDTLS_PLATFORM_STD_CALLOC", config ) == 0 )
2425    {
2426        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_STD_CALLOC );
2427        return( 0 );
2428    }
2429#endif /* MBEDTLS_PLATFORM_STD_CALLOC */
2430
2431#if defined(MBEDTLS_PLATFORM_STD_FREE)
2432    if( strcmp( "MBEDTLS_PLATFORM_STD_FREE", config ) == 0 )
2433    {
2434        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_STD_FREE );
2435        return( 0 );
2436    }
2437#endif /* MBEDTLS_PLATFORM_STD_FREE */
2438
2439#if defined(MBEDTLS_PLATFORM_STD_SETBUF)
2440    if( strcmp( "MBEDTLS_PLATFORM_STD_SETBUF", config ) == 0 )
2441    {
2442        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_STD_SETBUF );
2443        return( 0 );
2444    }
2445#endif /* MBEDTLS_PLATFORM_STD_SETBUF */
2446
2447#if defined(MBEDTLS_PLATFORM_STD_EXIT)
2448    if( strcmp( "MBEDTLS_PLATFORM_STD_EXIT", config ) == 0 )
2449    {
2450        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_STD_EXIT );
2451        return( 0 );
2452    }
2453#endif /* MBEDTLS_PLATFORM_STD_EXIT */
2454
2455#if defined(MBEDTLS_PLATFORM_STD_TIME)
2456    if( strcmp( "MBEDTLS_PLATFORM_STD_TIME", config ) == 0 )
2457    {
2458        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_STD_TIME );
2459        return( 0 );
2460    }
2461#endif /* MBEDTLS_PLATFORM_STD_TIME */
2462
2463#if defined(MBEDTLS_PLATFORM_STD_FPRINTF)
2464    if( strcmp( "MBEDTLS_PLATFORM_STD_FPRINTF", config ) == 0 )
2465    {
2466        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_STD_FPRINTF );
2467        return( 0 );
2468    }
2469#endif /* MBEDTLS_PLATFORM_STD_FPRINTF */
2470
2471#if defined(MBEDTLS_PLATFORM_STD_PRINTF)
2472    if( strcmp( "MBEDTLS_PLATFORM_STD_PRINTF", config ) == 0 )
2473    {
2474        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_STD_PRINTF );
2475        return( 0 );
2476    }
2477#endif /* MBEDTLS_PLATFORM_STD_PRINTF */
2478
2479#if defined(MBEDTLS_PLATFORM_STD_SNPRINTF)
2480    if( strcmp( "MBEDTLS_PLATFORM_STD_SNPRINTF", config ) == 0 )
2481    {
2482        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_STD_SNPRINTF );
2483        return( 0 );
2484    }
2485#endif /* MBEDTLS_PLATFORM_STD_SNPRINTF */
2486
2487#if defined(MBEDTLS_PLATFORM_STD_EXIT_SUCCESS)
2488    if( strcmp( "MBEDTLS_PLATFORM_STD_EXIT_SUCCESS", config ) == 0 )
2489    {
2490        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_STD_EXIT_SUCCESS );
2491        return( 0 );
2492    }
2493#endif /* MBEDTLS_PLATFORM_STD_EXIT_SUCCESS */
2494
2495#if defined(MBEDTLS_PLATFORM_STD_EXIT_FAILURE)
2496    if( strcmp( "MBEDTLS_PLATFORM_STD_EXIT_FAILURE", config ) == 0 )
2497    {
2498        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_STD_EXIT_FAILURE );
2499        return( 0 );
2500    }
2501#endif /* MBEDTLS_PLATFORM_STD_EXIT_FAILURE */
2502
2503#if defined(MBEDTLS_PLATFORM_STD_NV_SEED_READ)
2504    if( strcmp( "MBEDTLS_PLATFORM_STD_NV_SEED_READ", config ) == 0 )
2505    {
2506        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_STD_NV_SEED_READ );
2507        return( 0 );
2508    }
2509#endif /* MBEDTLS_PLATFORM_STD_NV_SEED_READ */
2510
2511#if defined(MBEDTLS_PLATFORM_STD_NV_SEED_WRITE)
2512    if( strcmp( "MBEDTLS_PLATFORM_STD_NV_SEED_WRITE", config ) == 0 )
2513    {
2514        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_STD_NV_SEED_WRITE );
2515        return( 0 );
2516    }
2517#endif /* MBEDTLS_PLATFORM_STD_NV_SEED_WRITE */
2518
2519#if defined(MBEDTLS_PLATFORM_STD_NV_SEED_FILE)
2520    if( strcmp( "MBEDTLS_PLATFORM_STD_NV_SEED_FILE", config ) == 0 )
2521    {
2522        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_STD_NV_SEED_FILE );
2523        return( 0 );
2524    }
2525#endif /* MBEDTLS_PLATFORM_STD_NV_SEED_FILE */
2526
2527#if defined(MBEDTLS_PLATFORM_CALLOC_MACRO)
2528    if( strcmp( "MBEDTLS_PLATFORM_CALLOC_MACRO", config ) == 0 )
2529    {
2530        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_CALLOC_MACRO );
2531        return( 0 );
2532    }
2533#endif /* MBEDTLS_PLATFORM_CALLOC_MACRO */
2534
2535#if defined(MBEDTLS_PLATFORM_FREE_MACRO)
2536    if( strcmp( "MBEDTLS_PLATFORM_FREE_MACRO", config ) == 0 )
2537    {
2538        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_FREE_MACRO );
2539        return( 0 );
2540    }
2541#endif /* MBEDTLS_PLATFORM_FREE_MACRO */
2542
2543#if defined(MBEDTLS_PLATFORM_EXIT_MACRO)
2544    if( strcmp( "MBEDTLS_PLATFORM_EXIT_MACRO", config ) == 0 )
2545    {
2546        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_EXIT_MACRO );
2547        return( 0 );
2548    }
2549#endif /* MBEDTLS_PLATFORM_EXIT_MACRO */
2550
2551#if defined(MBEDTLS_PLATFORM_SETBUF_MACRO)
2552    if( strcmp( "MBEDTLS_PLATFORM_SETBUF_MACRO", config ) == 0 )
2553    {
2554        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_SETBUF_MACRO );
2555        return( 0 );
2556    }
2557#endif /* MBEDTLS_PLATFORM_SETBUF_MACRO */
2558
2559#if defined(MBEDTLS_PLATFORM_TIME_MACRO)
2560    if( strcmp( "MBEDTLS_PLATFORM_TIME_MACRO", config ) == 0 )
2561    {
2562        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_TIME_MACRO );
2563        return( 0 );
2564    }
2565#endif /* MBEDTLS_PLATFORM_TIME_MACRO */
2566
2567#if defined(MBEDTLS_PLATFORM_TIME_TYPE_MACRO)
2568    if( strcmp( "MBEDTLS_PLATFORM_TIME_TYPE_MACRO", config ) == 0 )
2569    {
2570        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_TIME_TYPE_MACRO );
2571        return( 0 );
2572    }
2573#endif /* MBEDTLS_PLATFORM_TIME_TYPE_MACRO */
2574
2575#if defined(MBEDTLS_PLATFORM_FPRINTF_MACRO)
2576    if( strcmp( "MBEDTLS_PLATFORM_FPRINTF_MACRO", config ) == 0 )
2577    {
2578        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_FPRINTF_MACRO );
2579        return( 0 );
2580    }
2581#endif /* MBEDTLS_PLATFORM_FPRINTF_MACRO */
2582
2583#if defined(MBEDTLS_PLATFORM_PRINTF_MACRO)
2584    if( strcmp( "MBEDTLS_PLATFORM_PRINTF_MACRO", config ) == 0 )
2585    {
2586        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_PRINTF_MACRO );
2587        return( 0 );
2588    }
2589#endif /* MBEDTLS_PLATFORM_PRINTF_MACRO */
2590
2591#if defined(MBEDTLS_PLATFORM_SNPRINTF_MACRO)
2592    if( strcmp( "MBEDTLS_PLATFORM_SNPRINTF_MACRO", config ) == 0 )
2593    {
2594        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_SNPRINTF_MACRO );
2595        return( 0 );
2596    }
2597#endif /* MBEDTLS_PLATFORM_SNPRINTF_MACRO */
2598
2599#if defined(MBEDTLS_PLATFORM_VSNPRINTF_MACRO)
2600    if( strcmp( "MBEDTLS_PLATFORM_VSNPRINTF_MACRO", config ) == 0 )
2601    {
2602        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_VSNPRINTF_MACRO );
2603        return( 0 );
2604    }
2605#endif /* MBEDTLS_PLATFORM_VSNPRINTF_MACRO */
2606
2607#if defined(MBEDTLS_PLATFORM_NV_SEED_READ_MACRO)
2608    if( strcmp( "MBEDTLS_PLATFORM_NV_SEED_READ_MACRO", config ) == 0 )
2609    {
2610        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_NV_SEED_READ_MACRO );
2611        return( 0 );
2612    }
2613#endif /* MBEDTLS_PLATFORM_NV_SEED_READ_MACRO */
2614
2615#if defined(MBEDTLS_PLATFORM_NV_SEED_WRITE_MACRO)
2616    if( strcmp( "MBEDTLS_PLATFORM_NV_SEED_WRITE_MACRO", config ) == 0 )
2617    {
2618        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_NV_SEED_WRITE_MACRO );
2619        return( 0 );
2620    }
2621#endif /* MBEDTLS_PLATFORM_NV_SEED_WRITE_MACRO */
2622
2623#if defined(MBEDTLS_PLATFORM_MS_TIME_TYPE_MACRO)
2624    if( strcmp( "MBEDTLS_PLATFORM_MS_TIME_TYPE_MACRO", config ) == 0 )
2625    {
2626        MACRO_EXPANSION_TO_STR( MBEDTLS_PLATFORM_MS_TIME_TYPE_MACRO );
2627        return( 0 );
2628    }
2629#endif /* MBEDTLS_PLATFORM_MS_TIME_TYPE_MACRO */
2630
2631#if defined(MBEDTLS_PRINTF_MS_TIME)
2632    if( strcmp( "MBEDTLS_PRINTF_MS_TIME", config ) == 0 )
2633    {
2634        MACRO_EXPANSION_TO_STR( MBEDTLS_PRINTF_MS_TIME );
2635        return( 0 );
2636    }
2637#endif /* MBEDTLS_PRINTF_MS_TIME */
2638
2639#if defined(MBEDTLS_CHECK_RETURN)
2640    if( strcmp( "MBEDTLS_CHECK_RETURN", config ) == 0 )
2641    {
2642        MACRO_EXPANSION_TO_STR( MBEDTLS_CHECK_RETURN );
2643        return( 0 );
2644    }
2645#endif /* MBEDTLS_CHECK_RETURN */
2646
2647#if defined(MBEDTLS_IGNORE_RETURN)
2648    if( strcmp( "MBEDTLS_IGNORE_RETURN", config ) == 0 )
2649    {
2650        MACRO_EXPANSION_TO_STR( MBEDTLS_IGNORE_RETURN );
2651        return( 0 );
2652    }
2653#endif /* MBEDTLS_IGNORE_RETURN */
2654
2655#if defined(MBEDTLS_PSA_HMAC_DRBG_MD_TYPE)
2656    if( strcmp( "MBEDTLS_PSA_HMAC_DRBG_MD_TYPE", config ) == 0 )
2657    {
2658        MACRO_EXPANSION_TO_STR( MBEDTLS_PSA_HMAC_DRBG_MD_TYPE );
2659        return( 0 );
2660    }
2661#endif /* MBEDTLS_PSA_HMAC_DRBG_MD_TYPE */
2662
2663#if defined(MBEDTLS_PSA_KEY_SLOT_COUNT)
2664    if( strcmp( "MBEDTLS_PSA_KEY_SLOT_COUNT", config ) == 0 )
2665    {
2666        MACRO_EXPANSION_TO_STR( MBEDTLS_PSA_KEY_SLOT_COUNT );
2667        return( 0 );
2668    }
2669#endif /* MBEDTLS_PSA_KEY_SLOT_COUNT */
2670
2671#if defined(MBEDTLS_RSA_GEN_KEY_MIN_BITS)
2672    if( strcmp( "MBEDTLS_RSA_GEN_KEY_MIN_BITS", config ) == 0 )
2673    {
2674        MACRO_EXPANSION_TO_STR( MBEDTLS_RSA_GEN_KEY_MIN_BITS );
2675        return( 0 );
2676    }
2677#endif /* MBEDTLS_RSA_GEN_KEY_MIN_BITS */
2678
2679#if defined(MBEDTLS_SSL_CACHE_DEFAULT_TIMEOUT)
2680    if( strcmp( "MBEDTLS_SSL_CACHE_DEFAULT_TIMEOUT", config ) == 0 )
2681    {
2682        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_CACHE_DEFAULT_TIMEOUT );
2683        return( 0 );
2684    }
2685#endif /* MBEDTLS_SSL_CACHE_DEFAULT_TIMEOUT */
2686
2687#if defined(MBEDTLS_SSL_CACHE_DEFAULT_MAX_ENTRIES)
2688    if( strcmp( "MBEDTLS_SSL_CACHE_DEFAULT_MAX_ENTRIES", config ) == 0 )
2689    {
2690        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_CACHE_DEFAULT_MAX_ENTRIES );
2691        return( 0 );
2692    }
2693#endif /* MBEDTLS_SSL_CACHE_DEFAULT_MAX_ENTRIES */
2694
2695#if defined(MBEDTLS_SSL_IN_CONTENT_LEN)
2696    if( strcmp( "MBEDTLS_SSL_IN_CONTENT_LEN", config ) == 0 )
2697    {
2698        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_IN_CONTENT_LEN );
2699        return( 0 );
2700    }
2701#endif /* MBEDTLS_SSL_IN_CONTENT_LEN */
2702
2703#if defined(MBEDTLS_SSL_CID_IN_LEN_MAX)
2704    if( strcmp( "MBEDTLS_SSL_CID_IN_LEN_MAX", config ) == 0 )
2705    {
2706        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_CID_IN_LEN_MAX );
2707        return( 0 );
2708    }
2709#endif /* MBEDTLS_SSL_CID_IN_LEN_MAX */
2710
2711#if defined(MBEDTLS_SSL_CID_OUT_LEN_MAX)
2712    if( strcmp( "MBEDTLS_SSL_CID_OUT_LEN_MAX", config ) == 0 )
2713    {
2714        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_CID_OUT_LEN_MAX );
2715        return( 0 );
2716    }
2717#endif /* MBEDTLS_SSL_CID_OUT_LEN_MAX */
2718
2719#if defined(MBEDTLS_SSL_CID_TLS1_3_PADDING_GRANULARITY)
2720    if( strcmp( "MBEDTLS_SSL_CID_TLS1_3_PADDING_GRANULARITY", config ) == 0 )
2721    {
2722        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_CID_TLS1_3_PADDING_GRANULARITY );
2723        return( 0 );
2724    }
2725#endif /* MBEDTLS_SSL_CID_TLS1_3_PADDING_GRANULARITY */
2726
2727#if defined(MBEDTLS_SSL_OUT_CONTENT_LEN)
2728    if( strcmp( "MBEDTLS_SSL_OUT_CONTENT_LEN", config ) == 0 )
2729    {
2730        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_OUT_CONTENT_LEN );
2731        return( 0 );
2732    }
2733#endif /* MBEDTLS_SSL_OUT_CONTENT_LEN */
2734
2735#if defined(MBEDTLS_SSL_DTLS_MAX_BUFFERING)
2736    if( strcmp( "MBEDTLS_SSL_DTLS_MAX_BUFFERING", config ) == 0 )
2737    {
2738        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_DTLS_MAX_BUFFERING );
2739        return( 0 );
2740    }
2741#endif /* MBEDTLS_SSL_DTLS_MAX_BUFFERING */
2742
2743#if defined(MBEDTLS_PSK_MAX_LEN)
2744    if( strcmp( "MBEDTLS_PSK_MAX_LEN", config ) == 0 )
2745    {
2746        MACRO_EXPANSION_TO_STR( MBEDTLS_PSK_MAX_LEN );
2747        return( 0 );
2748    }
2749#endif /* MBEDTLS_PSK_MAX_LEN */
2750
2751#if defined(MBEDTLS_SSL_COOKIE_TIMEOUT)
2752    if( strcmp( "MBEDTLS_SSL_COOKIE_TIMEOUT", config ) == 0 )
2753    {
2754        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_COOKIE_TIMEOUT );
2755        return( 0 );
2756    }
2757#endif /* MBEDTLS_SSL_COOKIE_TIMEOUT */
2758
2759#if defined(MBEDTLS_SSL_MAX_EARLY_DATA_SIZE)
2760    if( strcmp( "MBEDTLS_SSL_MAX_EARLY_DATA_SIZE", config ) == 0 )
2761    {
2762        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_MAX_EARLY_DATA_SIZE );
2763        return( 0 );
2764    }
2765#endif /* MBEDTLS_SSL_MAX_EARLY_DATA_SIZE */
2766
2767#if defined(MBEDTLS_SSL_TLS1_3_TICKET_AGE_TOLERANCE)
2768    if( strcmp( "MBEDTLS_SSL_TLS1_3_TICKET_AGE_TOLERANCE", config ) == 0 )
2769    {
2770        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_TLS1_3_TICKET_AGE_TOLERANCE );
2771        return( 0 );
2772    }
2773#endif /* MBEDTLS_SSL_TLS1_3_TICKET_AGE_TOLERANCE */
2774
2775#if defined(MBEDTLS_SSL_TLS1_3_TICKET_NONCE_LENGTH)
2776    if( strcmp( "MBEDTLS_SSL_TLS1_3_TICKET_NONCE_LENGTH", config ) == 0 )
2777    {
2778        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_TLS1_3_TICKET_NONCE_LENGTH );
2779        return( 0 );
2780    }
2781#endif /* MBEDTLS_SSL_TLS1_3_TICKET_NONCE_LENGTH */
2782
2783#if defined(MBEDTLS_SSL_TLS1_3_DEFAULT_NEW_SESSION_TICKETS)
2784    if( strcmp( "MBEDTLS_SSL_TLS1_3_DEFAULT_NEW_SESSION_TICKETS", config ) == 0 )
2785    {
2786        MACRO_EXPANSION_TO_STR( MBEDTLS_SSL_TLS1_3_DEFAULT_NEW_SESSION_TICKETS );
2787        return( 0 );
2788    }
2789#endif /* MBEDTLS_SSL_TLS1_3_DEFAULT_NEW_SESSION_TICKETS */
2790
2791#if defined(MBEDTLS_X509_MAX_INTERMEDIATE_CA)
2792    if( strcmp( "MBEDTLS_X509_MAX_INTERMEDIATE_CA", config ) == 0 )
2793    {
2794        MACRO_EXPANSION_TO_STR( MBEDTLS_X509_MAX_INTERMEDIATE_CA );
2795        return( 0 );
2796    }
2797#endif /* MBEDTLS_X509_MAX_INTERMEDIATE_CA */
2798
2799#if defined(MBEDTLS_X509_MAX_FILE_PATH_LEN)
2800    if( strcmp( "MBEDTLS_X509_MAX_FILE_PATH_LEN", config ) == 0 )
2801    {
2802        MACRO_EXPANSION_TO_STR( MBEDTLS_X509_MAX_FILE_PATH_LEN );
2803        return( 0 );
2804    }
2805#endif /* MBEDTLS_X509_MAX_FILE_PATH_LEN */
2806
2807#if defined(PSA_WANT_ALG_CBC_MAC)
2808    if( strcmp( "PSA_WANT_ALG_CBC_MAC", config ) == 0 )
2809    {
2810        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_CBC_MAC );
2811        return( 0 );
2812    }
2813#endif /* PSA_WANT_ALG_CBC_MAC */
2814
2815#if defined(PSA_WANT_ALG_CBC_NO_PADDING)
2816    if( strcmp( "PSA_WANT_ALG_CBC_NO_PADDING", config ) == 0 )
2817    {
2818        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_CBC_NO_PADDING );
2819        return( 0 );
2820    }
2821#endif /* PSA_WANT_ALG_CBC_NO_PADDING */
2822
2823#if defined(PSA_WANT_ALG_CBC_PKCS7)
2824    if( strcmp( "PSA_WANT_ALG_CBC_PKCS7", config ) == 0 )
2825    {
2826        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_CBC_PKCS7 );
2827        return( 0 );
2828    }
2829#endif /* PSA_WANT_ALG_CBC_PKCS7 */
2830
2831#if defined(PSA_WANT_ALG_CCM)
2832    if( strcmp( "PSA_WANT_ALG_CCM", config ) == 0 )
2833    {
2834        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_CCM );
2835        return( 0 );
2836    }
2837#endif /* PSA_WANT_ALG_CCM */
2838
2839#if defined(PSA_WANT_ALG_CCM_STAR_NO_TAG)
2840    if( strcmp( "PSA_WANT_ALG_CCM_STAR_NO_TAG", config ) == 0 )
2841    {
2842        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_CCM_STAR_NO_TAG );
2843        return( 0 );
2844    }
2845#endif /* PSA_WANT_ALG_CCM_STAR_NO_TAG */
2846
2847#if defined(PSA_WANT_ALG_CMAC)
2848    if( strcmp( "PSA_WANT_ALG_CMAC", config ) == 0 )
2849    {
2850        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_CMAC );
2851        return( 0 );
2852    }
2853#endif /* PSA_WANT_ALG_CMAC */
2854
2855#if defined(PSA_WANT_ALG_CFB)
2856    if( strcmp( "PSA_WANT_ALG_CFB", config ) == 0 )
2857    {
2858        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_CFB );
2859        return( 0 );
2860    }
2861#endif /* PSA_WANT_ALG_CFB */
2862
2863#if defined(PSA_WANT_ALG_CHACHA20_POLY1305)
2864    if( strcmp( "PSA_WANT_ALG_CHACHA20_POLY1305", config ) == 0 )
2865    {
2866        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_CHACHA20_POLY1305 );
2867        return( 0 );
2868    }
2869#endif /* PSA_WANT_ALG_CHACHA20_POLY1305 */
2870
2871#if defined(PSA_WANT_ALG_CTR)
2872    if( strcmp( "PSA_WANT_ALG_CTR", config ) == 0 )
2873    {
2874        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_CTR );
2875        return( 0 );
2876    }
2877#endif /* PSA_WANT_ALG_CTR */
2878
2879#if defined(PSA_WANT_ALG_DETERMINISTIC_ECDSA)
2880    if( strcmp( "PSA_WANT_ALG_DETERMINISTIC_ECDSA", config ) == 0 )
2881    {
2882        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_DETERMINISTIC_ECDSA );
2883        return( 0 );
2884    }
2885#endif /* PSA_WANT_ALG_DETERMINISTIC_ECDSA */
2886
2887#if defined(PSA_WANT_ALG_ECB_NO_PADDING)
2888    if( strcmp( "PSA_WANT_ALG_ECB_NO_PADDING", config ) == 0 )
2889    {
2890        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_ECB_NO_PADDING );
2891        return( 0 );
2892    }
2893#endif /* PSA_WANT_ALG_ECB_NO_PADDING */
2894
2895#if defined(PSA_WANT_ALG_ECDH)
2896    if( strcmp( "PSA_WANT_ALG_ECDH", config ) == 0 )
2897    {
2898        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_ECDH );
2899        return( 0 );
2900    }
2901#endif /* PSA_WANT_ALG_ECDH */
2902
2903#if defined(PSA_WANT_ALG_FFDH)
2904    if( strcmp( "PSA_WANT_ALG_FFDH", config ) == 0 )
2905    {
2906        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_FFDH );
2907        return( 0 );
2908    }
2909#endif /* PSA_WANT_ALG_FFDH */
2910
2911#if defined(PSA_WANT_ALG_ECDSA)
2912    if( strcmp( "PSA_WANT_ALG_ECDSA", config ) == 0 )
2913    {
2914        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_ECDSA );
2915        return( 0 );
2916    }
2917#endif /* PSA_WANT_ALG_ECDSA */
2918
2919#if defined(PSA_WANT_ALG_JPAKE)
2920    if( strcmp( "PSA_WANT_ALG_JPAKE", config ) == 0 )
2921    {
2922        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_JPAKE );
2923        return( 0 );
2924    }
2925#endif /* PSA_WANT_ALG_JPAKE */
2926
2927#if defined(PSA_WANT_ALG_GCM)
2928    if( strcmp( "PSA_WANT_ALG_GCM", config ) == 0 )
2929    {
2930        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_GCM );
2931        return( 0 );
2932    }
2933#endif /* PSA_WANT_ALG_GCM */
2934
2935#if defined(PSA_WANT_ALG_HKDF)
2936    if( strcmp( "PSA_WANT_ALG_HKDF", config ) == 0 )
2937    {
2938        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_HKDF );
2939        return( 0 );
2940    }
2941#endif /* PSA_WANT_ALG_HKDF */
2942
2943#if defined(PSA_WANT_ALG_HKDF_EXTRACT)
2944    if( strcmp( "PSA_WANT_ALG_HKDF_EXTRACT", config ) == 0 )
2945    {
2946        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_HKDF_EXTRACT );
2947        return( 0 );
2948    }
2949#endif /* PSA_WANT_ALG_HKDF_EXTRACT */
2950
2951#if defined(PSA_WANT_ALG_HKDF_EXPAND)
2952    if( strcmp( "PSA_WANT_ALG_HKDF_EXPAND", config ) == 0 )
2953    {
2954        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_HKDF_EXPAND );
2955        return( 0 );
2956    }
2957#endif /* PSA_WANT_ALG_HKDF_EXPAND */
2958
2959#if defined(PSA_WANT_ALG_HMAC)
2960    if( strcmp( "PSA_WANT_ALG_HMAC", config ) == 0 )
2961    {
2962        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_HMAC );
2963        return( 0 );
2964    }
2965#endif /* PSA_WANT_ALG_HMAC */
2966
2967#if defined(PSA_WANT_ALG_MD5)
2968    if( strcmp( "PSA_WANT_ALG_MD5", config ) == 0 )
2969    {
2970        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_MD5 );
2971        return( 0 );
2972    }
2973#endif /* PSA_WANT_ALG_MD5 */
2974
2975#if defined(PSA_WANT_ALG_OFB)
2976    if( strcmp( "PSA_WANT_ALG_OFB", config ) == 0 )
2977    {
2978        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_OFB );
2979        return( 0 );
2980    }
2981#endif /* PSA_WANT_ALG_OFB */
2982
2983#if defined(PSA_WANT_ALG_PBKDF2_HMAC)
2984    if( strcmp( "PSA_WANT_ALG_PBKDF2_HMAC", config ) == 0 )
2985    {
2986        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_PBKDF2_HMAC );
2987        return( 0 );
2988    }
2989#endif /* PSA_WANT_ALG_PBKDF2_HMAC */
2990
2991#if defined(PSA_WANT_ALG_PBKDF2_AES_CMAC_PRF_128)
2992    if( strcmp( "PSA_WANT_ALG_PBKDF2_AES_CMAC_PRF_128", config ) == 0 )
2993    {
2994        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_PBKDF2_AES_CMAC_PRF_128 );
2995        return( 0 );
2996    }
2997#endif /* PSA_WANT_ALG_PBKDF2_AES_CMAC_PRF_128 */
2998
2999#if defined(PSA_WANT_ALG_RIPEMD160)
3000    if( strcmp( "PSA_WANT_ALG_RIPEMD160", config ) == 0 )
3001    {
3002        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_RIPEMD160 );
3003        return( 0 );
3004    }
3005#endif /* PSA_WANT_ALG_RIPEMD160 */
3006
3007#if defined(PSA_WANT_ALG_RSA_OAEP)
3008    if( strcmp( "PSA_WANT_ALG_RSA_OAEP", config ) == 0 )
3009    {
3010        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_RSA_OAEP );
3011        return( 0 );
3012    }
3013#endif /* PSA_WANT_ALG_RSA_OAEP */
3014
3015#if defined(PSA_WANT_ALG_RSA_PKCS1V15_CRYPT)
3016    if( strcmp( "PSA_WANT_ALG_RSA_PKCS1V15_CRYPT", config ) == 0 )
3017    {
3018        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_RSA_PKCS1V15_CRYPT );
3019        return( 0 );
3020    }
3021#endif /* PSA_WANT_ALG_RSA_PKCS1V15_CRYPT */
3022
3023#if defined(PSA_WANT_ALG_RSA_PKCS1V15_SIGN)
3024    if( strcmp( "PSA_WANT_ALG_RSA_PKCS1V15_SIGN", config ) == 0 )
3025    {
3026        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_RSA_PKCS1V15_SIGN );
3027        return( 0 );
3028    }
3029#endif /* PSA_WANT_ALG_RSA_PKCS1V15_SIGN */
3030
3031#if defined(PSA_WANT_ALG_RSA_PSS)
3032    if( strcmp( "PSA_WANT_ALG_RSA_PSS", config ) == 0 )
3033    {
3034        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_RSA_PSS );
3035        return( 0 );
3036    }
3037#endif /* PSA_WANT_ALG_RSA_PSS */
3038
3039#if defined(PSA_WANT_ALG_SHA_1)
3040    if( strcmp( "PSA_WANT_ALG_SHA_1", config ) == 0 )
3041    {
3042        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_SHA_1 );
3043        return( 0 );
3044    }
3045#endif /* PSA_WANT_ALG_SHA_1 */
3046
3047#if defined(PSA_WANT_ALG_SHA_224)
3048    if( strcmp( "PSA_WANT_ALG_SHA_224", config ) == 0 )
3049    {
3050        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_SHA_224 );
3051        return( 0 );
3052    }
3053#endif /* PSA_WANT_ALG_SHA_224 */
3054
3055#if defined(PSA_WANT_ALG_SHA_256)
3056    if( strcmp( "PSA_WANT_ALG_SHA_256", config ) == 0 )
3057    {
3058        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_SHA_256 );
3059        return( 0 );
3060    }
3061#endif /* PSA_WANT_ALG_SHA_256 */
3062
3063#if defined(PSA_WANT_ALG_SHA_384)
3064    if( strcmp( "PSA_WANT_ALG_SHA_384", config ) == 0 )
3065    {
3066        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_SHA_384 );
3067        return( 0 );
3068    }
3069#endif /* PSA_WANT_ALG_SHA_384 */
3070
3071#if defined(PSA_WANT_ALG_SHA_512)
3072    if( strcmp( "PSA_WANT_ALG_SHA_512", config ) == 0 )
3073    {
3074        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_SHA_512 );
3075        return( 0 );
3076    }
3077#endif /* PSA_WANT_ALG_SHA_512 */
3078
3079#if defined(PSA_WANT_ALG_SHA3_224)
3080    if( strcmp( "PSA_WANT_ALG_SHA3_224", config ) == 0 )
3081    {
3082        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_SHA3_224 );
3083        return( 0 );
3084    }
3085#endif /* PSA_WANT_ALG_SHA3_224 */
3086
3087#if defined(PSA_WANT_ALG_SHA3_256)
3088    if( strcmp( "PSA_WANT_ALG_SHA3_256", config ) == 0 )
3089    {
3090        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_SHA3_256 );
3091        return( 0 );
3092    }
3093#endif /* PSA_WANT_ALG_SHA3_256 */
3094
3095#if defined(PSA_WANT_ALG_SHA3_384)
3096    if( strcmp( "PSA_WANT_ALG_SHA3_384", config ) == 0 )
3097    {
3098        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_SHA3_384 );
3099        return( 0 );
3100    }
3101#endif /* PSA_WANT_ALG_SHA3_384 */
3102
3103#if defined(PSA_WANT_ALG_SHA3_512)
3104    if( strcmp( "PSA_WANT_ALG_SHA3_512", config ) == 0 )
3105    {
3106        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_SHA3_512 );
3107        return( 0 );
3108    }
3109#endif /* PSA_WANT_ALG_SHA3_512 */
3110
3111#if defined(PSA_WANT_ALG_STREAM_CIPHER)
3112    if( strcmp( "PSA_WANT_ALG_STREAM_CIPHER", config ) == 0 )
3113    {
3114        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_STREAM_CIPHER );
3115        return( 0 );
3116    }
3117#endif /* PSA_WANT_ALG_STREAM_CIPHER */
3118
3119#if defined(PSA_WANT_ALG_TLS12_PRF)
3120    if( strcmp( "PSA_WANT_ALG_TLS12_PRF", config ) == 0 )
3121    {
3122        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_TLS12_PRF );
3123        return( 0 );
3124    }
3125#endif /* PSA_WANT_ALG_TLS12_PRF */
3126
3127#if defined(PSA_WANT_ALG_TLS12_PSK_TO_MS)
3128    if( strcmp( "PSA_WANT_ALG_TLS12_PSK_TO_MS", config ) == 0 )
3129    {
3130        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_TLS12_PSK_TO_MS );
3131        return( 0 );
3132    }
3133#endif /* PSA_WANT_ALG_TLS12_PSK_TO_MS */
3134
3135#if defined(PSA_WANT_ALG_TLS12_ECJPAKE_TO_PMS)
3136    if( strcmp( "PSA_WANT_ALG_TLS12_ECJPAKE_TO_PMS", config ) == 0 )
3137    {
3138        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_TLS12_ECJPAKE_TO_PMS );
3139        return( 0 );
3140    }
3141#endif /* PSA_WANT_ALG_TLS12_ECJPAKE_TO_PMS */
3142
3143#if defined(PSA_WANT_ALG_XTS)
3144    if( strcmp( "PSA_WANT_ALG_XTS", config ) == 0 )
3145    {
3146        MACRO_EXPANSION_TO_STR( PSA_WANT_ALG_XTS );
3147        return( 0 );
3148    }
3149#endif /* PSA_WANT_ALG_XTS */
3150
3151#if defined(PSA_WANT_ECC_BRAINPOOL_P_R1_256)
3152    if( strcmp( "PSA_WANT_ECC_BRAINPOOL_P_R1_256", config ) == 0 )
3153    {
3154        MACRO_EXPANSION_TO_STR( PSA_WANT_ECC_BRAINPOOL_P_R1_256 );
3155        return( 0 );
3156    }
3157#endif /* PSA_WANT_ECC_BRAINPOOL_P_R1_256 */
3158
3159#if defined(PSA_WANT_ECC_BRAINPOOL_P_R1_384)
3160    if( strcmp( "PSA_WANT_ECC_BRAINPOOL_P_R1_384", config ) == 0 )
3161    {
3162        MACRO_EXPANSION_TO_STR( PSA_WANT_ECC_BRAINPOOL_P_R1_384 );
3163        return( 0 );
3164    }
3165#endif /* PSA_WANT_ECC_BRAINPOOL_P_R1_384 */
3166
3167#if defined(PSA_WANT_ECC_BRAINPOOL_P_R1_512)
3168    if( strcmp( "PSA_WANT_ECC_BRAINPOOL_P_R1_512", config ) == 0 )
3169    {
3170        MACRO_EXPANSION_TO_STR( PSA_WANT_ECC_BRAINPOOL_P_R1_512 );
3171        return( 0 );
3172    }
3173#endif /* PSA_WANT_ECC_BRAINPOOL_P_R1_512 */
3174
3175#if defined(PSA_WANT_ECC_MONTGOMERY_255)
3176    if( strcmp( "PSA_WANT_ECC_MONTGOMERY_255", config ) == 0 )
3177    {
3178        MACRO_EXPANSION_TO_STR( PSA_WANT_ECC_MONTGOMERY_255 );
3179        return( 0 );
3180    }
3181#endif /* PSA_WANT_ECC_MONTGOMERY_255 */
3182
3183#if defined(PSA_WANT_ECC_MONTGOMERY_448)
3184    if( strcmp( "PSA_WANT_ECC_MONTGOMERY_448", config ) == 0 )
3185    {
3186        MACRO_EXPANSION_TO_STR( PSA_WANT_ECC_MONTGOMERY_448 );
3187        return( 0 );
3188    }
3189#endif /* PSA_WANT_ECC_MONTGOMERY_448 */
3190
3191#if defined(PSA_WANT_ECC_SECP_K1_192)
3192    if( strcmp( "PSA_WANT_ECC_SECP_K1_192", config ) == 0 )
3193    {
3194        MACRO_EXPANSION_TO_STR( PSA_WANT_ECC_SECP_K1_192 );
3195        return( 0 );
3196    }
3197#endif /* PSA_WANT_ECC_SECP_K1_192 */
3198
3199#if defined(PSA_WANT_ECC_SECP_K1_224)
3200    if( strcmp( "PSA_WANT_ECC_SECP_K1_224", config ) == 0 )
3201    {
3202        MACRO_EXPANSION_TO_STR( PSA_WANT_ECC_SECP_K1_224 );
3203        return( 0 );
3204    }
3205#endif /* PSA_WANT_ECC_SECP_K1_224 */
3206
3207#if defined(PSA_WANT_ECC_SECP_K1_256)
3208    if( strcmp( "PSA_WANT_ECC_SECP_K1_256", config ) == 0 )
3209    {
3210        MACRO_EXPANSION_TO_STR( PSA_WANT_ECC_SECP_K1_256 );
3211        return( 0 );
3212    }
3213#endif /* PSA_WANT_ECC_SECP_K1_256 */
3214
3215#if defined(PSA_WANT_ECC_SECP_R1_192)
3216    if( strcmp( "PSA_WANT_ECC_SECP_R1_192", config ) == 0 )
3217    {
3218        MACRO_EXPANSION_TO_STR( PSA_WANT_ECC_SECP_R1_192 );
3219        return( 0 );
3220    }
3221#endif /* PSA_WANT_ECC_SECP_R1_192 */
3222
3223#if defined(PSA_WANT_ECC_SECP_R1_224)
3224    if( strcmp( "PSA_WANT_ECC_SECP_R1_224", config ) == 0 )
3225    {
3226        MACRO_EXPANSION_TO_STR( PSA_WANT_ECC_SECP_R1_224 );
3227        return( 0 );
3228    }
3229#endif /* PSA_WANT_ECC_SECP_R1_224 */
3230
3231#if defined(PSA_WANT_ECC_SECP_R1_256)
3232    if( strcmp( "PSA_WANT_ECC_SECP_R1_256", config ) == 0 )
3233    {
3234        MACRO_EXPANSION_TO_STR( PSA_WANT_ECC_SECP_R1_256 );
3235        return( 0 );
3236    }
3237#endif /* PSA_WANT_ECC_SECP_R1_256 */
3238
3239#if defined(PSA_WANT_ECC_SECP_R1_384)
3240    if( strcmp( "PSA_WANT_ECC_SECP_R1_384", config ) == 0 )
3241    {
3242        MACRO_EXPANSION_TO_STR( PSA_WANT_ECC_SECP_R1_384 );
3243        return( 0 );
3244    }
3245#endif /* PSA_WANT_ECC_SECP_R1_384 */
3246
3247#if defined(PSA_WANT_ECC_SECP_R1_521)
3248    if( strcmp( "PSA_WANT_ECC_SECP_R1_521", config ) == 0 )
3249    {
3250        MACRO_EXPANSION_TO_STR( PSA_WANT_ECC_SECP_R1_521 );
3251        return( 0 );
3252    }
3253#endif /* PSA_WANT_ECC_SECP_R1_521 */
3254
3255#if defined(PSA_WANT_DH_RFC7919_2048)
3256    if( strcmp( "PSA_WANT_DH_RFC7919_2048", config ) == 0 )
3257    {
3258        MACRO_EXPANSION_TO_STR( PSA_WANT_DH_RFC7919_2048 );
3259        return( 0 );
3260    }
3261#endif /* PSA_WANT_DH_RFC7919_2048 */
3262
3263#if defined(PSA_WANT_DH_RFC7919_3072)
3264    if( strcmp( "PSA_WANT_DH_RFC7919_3072", config ) == 0 )
3265    {
3266        MACRO_EXPANSION_TO_STR( PSA_WANT_DH_RFC7919_3072 );
3267        return( 0 );
3268    }
3269#endif /* PSA_WANT_DH_RFC7919_3072 */
3270
3271#if defined(PSA_WANT_DH_RFC7919_4096)
3272    if( strcmp( "PSA_WANT_DH_RFC7919_4096", config ) == 0 )
3273    {
3274        MACRO_EXPANSION_TO_STR( PSA_WANT_DH_RFC7919_4096 );
3275        return( 0 );
3276    }
3277#endif /* PSA_WANT_DH_RFC7919_4096 */
3278
3279#if defined(PSA_WANT_DH_RFC7919_6144)
3280    if( strcmp( "PSA_WANT_DH_RFC7919_6144", config ) == 0 )
3281    {
3282        MACRO_EXPANSION_TO_STR( PSA_WANT_DH_RFC7919_6144 );
3283        return( 0 );
3284    }
3285#endif /* PSA_WANT_DH_RFC7919_6144 */
3286
3287#if defined(PSA_WANT_DH_RFC7919_8192)
3288    if( strcmp( "PSA_WANT_DH_RFC7919_8192", config ) == 0 )
3289    {
3290        MACRO_EXPANSION_TO_STR( PSA_WANT_DH_RFC7919_8192 );
3291        return( 0 );
3292    }
3293#endif /* PSA_WANT_DH_RFC7919_8192 */
3294
3295#if defined(PSA_WANT_KEY_TYPE_DERIVE)
3296    if( strcmp( "PSA_WANT_KEY_TYPE_DERIVE", config ) == 0 )
3297    {
3298        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_DERIVE );
3299        return( 0 );
3300    }
3301#endif /* PSA_WANT_KEY_TYPE_DERIVE */
3302
3303#if defined(PSA_WANT_KEY_TYPE_PASSWORD)
3304    if( strcmp( "PSA_WANT_KEY_TYPE_PASSWORD", config ) == 0 )
3305    {
3306        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_PASSWORD );
3307        return( 0 );
3308    }
3309#endif /* PSA_WANT_KEY_TYPE_PASSWORD */
3310
3311#if defined(PSA_WANT_KEY_TYPE_PASSWORD_HASH)
3312    if( strcmp( "PSA_WANT_KEY_TYPE_PASSWORD_HASH", config ) == 0 )
3313    {
3314        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_PASSWORD_HASH );
3315        return( 0 );
3316    }
3317#endif /* PSA_WANT_KEY_TYPE_PASSWORD_HASH */
3318
3319#if defined(PSA_WANT_KEY_TYPE_HMAC)
3320    if( strcmp( "PSA_WANT_KEY_TYPE_HMAC", config ) == 0 )
3321    {
3322        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_HMAC );
3323        return( 0 );
3324    }
3325#endif /* PSA_WANT_KEY_TYPE_HMAC */
3326
3327#if defined(PSA_WANT_KEY_TYPE_AES)
3328    if( strcmp( "PSA_WANT_KEY_TYPE_AES", config ) == 0 )
3329    {
3330        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_AES );
3331        return( 0 );
3332    }
3333#endif /* PSA_WANT_KEY_TYPE_AES */
3334
3335#if defined(PSA_WANT_KEY_TYPE_ARIA)
3336    if( strcmp( "PSA_WANT_KEY_TYPE_ARIA", config ) == 0 )
3337    {
3338        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_ARIA );
3339        return( 0 );
3340    }
3341#endif /* PSA_WANT_KEY_TYPE_ARIA */
3342
3343#if defined(PSA_WANT_KEY_TYPE_CAMELLIA)
3344    if( strcmp( "PSA_WANT_KEY_TYPE_CAMELLIA", config ) == 0 )
3345    {
3346        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_CAMELLIA );
3347        return( 0 );
3348    }
3349#endif /* PSA_WANT_KEY_TYPE_CAMELLIA */
3350
3351#if defined(PSA_WANT_KEY_TYPE_CHACHA20)
3352    if( strcmp( "PSA_WANT_KEY_TYPE_CHACHA20", config ) == 0 )
3353    {
3354        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_CHACHA20 );
3355        return( 0 );
3356    }
3357#endif /* PSA_WANT_KEY_TYPE_CHACHA20 */
3358
3359#if defined(PSA_WANT_KEY_TYPE_DES)
3360    if( strcmp( "PSA_WANT_KEY_TYPE_DES", config ) == 0 )
3361    {
3362        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_DES );
3363        return( 0 );
3364    }
3365#endif /* PSA_WANT_KEY_TYPE_DES */
3366
3367#if defined(PSA_WANT_KEY_TYPE_ECC_KEY_PAIR)
3368    if( strcmp( "PSA_WANT_KEY_TYPE_ECC_KEY_PAIR", config ) == 0 )
3369    {
3370        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_ECC_KEY_PAIR );
3371        return( 0 );
3372    }
3373#endif /* PSA_WANT_KEY_TYPE_ECC_KEY_PAIR */
3374
3375#if defined(PSA_WANT_KEY_TYPE_ECC_PUBLIC_KEY)
3376    if( strcmp( "PSA_WANT_KEY_TYPE_ECC_PUBLIC_KEY", config ) == 0 )
3377    {
3378        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_ECC_PUBLIC_KEY );
3379        return( 0 );
3380    }
3381#endif /* PSA_WANT_KEY_TYPE_ECC_PUBLIC_KEY */
3382
3383#if defined(PSA_WANT_KEY_TYPE_DH_PUBLIC_KEY)
3384    if( strcmp( "PSA_WANT_KEY_TYPE_DH_PUBLIC_KEY", config ) == 0 )
3385    {
3386        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_DH_PUBLIC_KEY );
3387        return( 0 );
3388    }
3389#endif /* PSA_WANT_KEY_TYPE_DH_PUBLIC_KEY */
3390
3391#if defined(PSA_WANT_KEY_TYPE_RAW_DATA)
3392    if( strcmp( "PSA_WANT_KEY_TYPE_RAW_DATA", config ) == 0 )
3393    {
3394        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_RAW_DATA );
3395        return( 0 );
3396    }
3397#endif /* PSA_WANT_KEY_TYPE_RAW_DATA */
3398
3399#if defined(PSA_WANT_KEY_TYPE_RSA_KEY_PAIR)
3400    if( strcmp( "PSA_WANT_KEY_TYPE_RSA_KEY_PAIR", config ) == 0 )
3401    {
3402        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_RSA_KEY_PAIR );
3403        return( 0 );
3404    }
3405#endif /* PSA_WANT_KEY_TYPE_RSA_KEY_PAIR */
3406
3407#if defined(PSA_WANT_KEY_TYPE_RSA_PUBLIC_KEY)
3408    if( strcmp( "PSA_WANT_KEY_TYPE_RSA_PUBLIC_KEY", config ) == 0 )
3409    {
3410        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_RSA_PUBLIC_KEY );
3411        return( 0 );
3412    }
3413#endif /* PSA_WANT_KEY_TYPE_RSA_PUBLIC_KEY */
3414
3415#if defined(PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_BASIC)
3416    if( strcmp( "PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_BASIC", config ) == 0 )
3417    {
3418        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_BASIC );
3419        return( 0 );
3420    }
3421#endif /* PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_BASIC */
3422
3423#if defined(PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_IMPORT)
3424    if( strcmp( "PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_IMPORT", config ) == 0 )
3425    {
3426        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_IMPORT );
3427        return( 0 );
3428    }
3429#endif /* PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_IMPORT */
3430
3431#if defined(PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_EXPORT)
3432    if( strcmp( "PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_EXPORT", config ) == 0 )
3433    {
3434        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_EXPORT );
3435        return( 0 );
3436    }
3437#endif /* PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_EXPORT */
3438
3439#if defined(PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_GENERATE)
3440    if( strcmp( "PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_GENERATE", config ) == 0 )
3441    {
3442        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_GENERATE );
3443        return( 0 );
3444    }
3445#endif /* PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_GENERATE */
3446
3447#if defined(PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_DERIVE)
3448    if( strcmp( "PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_DERIVE", config ) == 0 )
3449    {
3450        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_DERIVE );
3451        return( 0 );
3452    }
3453#endif /* PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_DERIVE */
3454
3455#if defined(PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_BASIC)
3456    if( strcmp( "PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_BASIC", config ) == 0 )
3457    {
3458        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_BASIC );
3459        return( 0 );
3460    }
3461#endif /* PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_BASIC */
3462
3463#if defined(PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_IMPORT)
3464    if( strcmp( "PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_IMPORT", config ) == 0 )
3465    {
3466        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_IMPORT );
3467        return( 0 );
3468    }
3469#endif /* PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_IMPORT */
3470
3471#if defined(PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_EXPORT)
3472    if( strcmp( "PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_EXPORT", config ) == 0 )
3473    {
3474        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_EXPORT );
3475        return( 0 );
3476    }
3477#endif /* PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_EXPORT */
3478
3479#if defined(PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_GENERATE)
3480    if( strcmp( "PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_GENERATE", config ) == 0 )
3481    {
3482        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_GENERATE );
3483        return( 0 );
3484    }
3485#endif /* PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_GENERATE */
3486
3487#if defined(PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_DERIVE)
3488    if( strcmp( "PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_DERIVE", config ) == 0 )
3489    {
3490        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_DERIVE );
3491        return( 0 );
3492    }
3493#endif /* PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_DERIVE */
3494
3495#if defined(PSA_WANT_KEY_TYPE_DH_KEY_PAIR_BASIC)
3496    if( strcmp( "PSA_WANT_KEY_TYPE_DH_KEY_PAIR_BASIC", config ) == 0 )
3497    {
3498        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_DH_KEY_PAIR_BASIC );
3499        return( 0 );
3500    }
3501#endif /* PSA_WANT_KEY_TYPE_DH_KEY_PAIR_BASIC */
3502
3503#if defined(PSA_WANT_KEY_TYPE_DH_KEY_PAIR_IMPORT)
3504    if( strcmp( "PSA_WANT_KEY_TYPE_DH_KEY_PAIR_IMPORT", config ) == 0 )
3505    {
3506        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_DH_KEY_PAIR_IMPORT );
3507        return( 0 );
3508    }
3509#endif /* PSA_WANT_KEY_TYPE_DH_KEY_PAIR_IMPORT */
3510
3511#if defined(PSA_WANT_KEY_TYPE_DH_KEY_PAIR_EXPORT)
3512    if( strcmp( "PSA_WANT_KEY_TYPE_DH_KEY_PAIR_EXPORT", config ) == 0 )
3513    {
3514        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_DH_KEY_PAIR_EXPORT );
3515        return( 0 );
3516    }
3517#endif /* PSA_WANT_KEY_TYPE_DH_KEY_PAIR_EXPORT */
3518
3519#if defined(PSA_WANT_KEY_TYPE_DH_KEY_PAIR_GENERATE)
3520    if( strcmp( "PSA_WANT_KEY_TYPE_DH_KEY_PAIR_GENERATE", config ) == 0 )
3521    {
3522        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_DH_KEY_PAIR_GENERATE );
3523        return( 0 );
3524    }
3525#endif /* PSA_WANT_KEY_TYPE_DH_KEY_PAIR_GENERATE */
3526
3527#if defined(PSA_WANT_KEY_TYPE_DH_KEY_PAIR_DERIVE)
3528    if( strcmp( "PSA_WANT_KEY_TYPE_DH_KEY_PAIR_DERIVE", config ) == 0 )
3529    {
3530        MACRO_EXPANSION_TO_STR( PSA_WANT_KEY_TYPE_DH_KEY_PAIR_DERIVE );
3531        return( 0 );
3532    }
3533#endif /* PSA_WANT_KEY_TYPE_DH_KEY_PAIR_DERIVE */
3534
3535 /* If the symbol is not found, return an error */
3536    return 1;
3537}
3538
3539void list_config(void)
3540{
3541    #if defined(MBEDTLS_CONFIG_VERSION)
3542    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CONFIG_VERSION);
3543#endif /* MBEDTLS_CONFIG_VERSION */
3544
3545#if defined(MBEDTLS_HAVE_ASM)
3546    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_HAVE_ASM);
3547#endif /* MBEDTLS_HAVE_ASM */
3548
3549#if defined(MBEDTLS_NO_UDBL_DIVISION)
3550    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_NO_UDBL_DIVISION);
3551#endif /* MBEDTLS_NO_UDBL_DIVISION */
3552
3553#if defined(MBEDTLS_NO_64BIT_MULTIPLICATION)
3554    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_NO_64BIT_MULTIPLICATION);
3555#endif /* MBEDTLS_NO_64BIT_MULTIPLICATION */
3556
3557#if defined(MBEDTLS_HAVE_SSE2)
3558    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_HAVE_SSE2);
3559#endif /* MBEDTLS_HAVE_SSE2 */
3560
3561#if defined(MBEDTLS_HAVE_TIME)
3562    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_HAVE_TIME);
3563#endif /* MBEDTLS_HAVE_TIME */
3564
3565#if defined(MBEDTLS_HAVE_TIME_DATE)
3566    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_HAVE_TIME_DATE);
3567#endif /* MBEDTLS_HAVE_TIME_DATE */
3568
3569#if defined(MBEDTLS_PLATFORM_MEMORY)
3570    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_MEMORY);
3571#endif /* MBEDTLS_PLATFORM_MEMORY */
3572
3573#if defined(MBEDTLS_PLATFORM_NO_STD_FUNCTIONS)
3574    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_NO_STD_FUNCTIONS);
3575#endif /* MBEDTLS_PLATFORM_NO_STD_FUNCTIONS */
3576
3577#if defined(MBEDTLS_PLATFORM_SETBUF_ALT)
3578    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_SETBUF_ALT);
3579#endif /* MBEDTLS_PLATFORM_SETBUF_ALT */
3580
3581#if defined(MBEDTLS_PLATFORM_EXIT_ALT)
3582    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_EXIT_ALT);
3583#endif /* MBEDTLS_PLATFORM_EXIT_ALT */
3584
3585#if defined(MBEDTLS_PLATFORM_TIME_ALT)
3586    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_TIME_ALT);
3587#endif /* MBEDTLS_PLATFORM_TIME_ALT */
3588
3589#if defined(MBEDTLS_PLATFORM_FPRINTF_ALT)
3590    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_FPRINTF_ALT);
3591#endif /* MBEDTLS_PLATFORM_FPRINTF_ALT */
3592
3593#if defined(MBEDTLS_PLATFORM_PRINTF_ALT)
3594    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_PRINTF_ALT);
3595#endif /* MBEDTLS_PLATFORM_PRINTF_ALT */
3596
3597#if defined(MBEDTLS_PLATFORM_SNPRINTF_ALT)
3598    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_SNPRINTF_ALT);
3599#endif /* MBEDTLS_PLATFORM_SNPRINTF_ALT */
3600
3601#if defined(MBEDTLS_PLATFORM_VSNPRINTF_ALT)
3602    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_VSNPRINTF_ALT);
3603#endif /* MBEDTLS_PLATFORM_VSNPRINTF_ALT */
3604
3605#if defined(MBEDTLS_PLATFORM_NV_SEED_ALT)
3606    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_NV_SEED_ALT);
3607#endif /* MBEDTLS_PLATFORM_NV_SEED_ALT */
3608
3609#if defined(MBEDTLS_PLATFORM_SETUP_TEARDOWN_ALT)
3610    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_SETUP_TEARDOWN_ALT);
3611#endif /* MBEDTLS_PLATFORM_SETUP_TEARDOWN_ALT */
3612
3613#if defined(MBEDTLS_PLATFORM_MS_TIME_ALT)
3614    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_MS_TIME_ALT);
3615#endif /* MBEDTLS_PLATFORM_MS_TIME_ALT */
3616
3617#if defined(MBEDTLS_PLATFORM_GMTIME_R_ALT)
3618    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_GMTIME_R_ALT);
3619#endif /* MBEDTLS_PLATFORM_GMTIME_R_ALT */
3620
3621#if defined(MBEDTLS_PLATFORM_ZEROIZE_ALT)
3622    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_ZEROIZE_ALT);
3623#endif /* MBEDTLS_PLATFORM_ZEROIZE_ALT */
3624
3625#if defined(MBEDTLS_DEPRECATED_WARNING)
3626    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_DEPRECATED_WARNING);
3627#endif /* MBEDTLS_DEPRECATED_WARNING */
3628
3629#if defined(MBEDTLS_DEPRECATED_REMOVED)
3630    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_DEPRECATED_REMOVED);
3631#endif /* MBEDTLS_DEPRECATED_REMOVED */
3632
3633#if defined(MBEDTLS_TIMING_ALT)
3634    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_TIMING_ALT);
3635#endif /* MBEDTLS_TIMING_ALT */
3636
3637#if defined(MBEDTLS_AES_ALT)
3638    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_AES_ALT);
3639#endif /* MBEDTLS_AES_ALT */
3640
3641#if defined(MBEDTLS_ARIA_ALT)
3642    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ARIA_ALT);
3643#endif /* MBEDTLS_ARIA_ALT */
3644
3645#if defined(MBEDTLS_CAMELLIA_ALT)
3646    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CAMELLIA_ALT);
3647#endif /* MBEDTLS_CAMELLIA_ALT */
3648
3649#if defined(MBEDTLS_CCM_ALT)
3650    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CCM_ALT);
3651#endif /* MBEDTLS_CCM_ALT */
3652
3653#if defined(MBEDTLS_CHACHA20_ALT)
3654    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CHACHA20_ALT);
3655#endif /* MBEDTLS_CHACHA20_ALT */
3656
3657#if defined(MBEDTLS_CHACHAPOLY_ALT)
3658    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CHACHAPOLY_ALT);
3659#endif /* MBEDTLS_CHACHAPOLY_ALT */
3660
3661#if defined(MBEDTLS_CMAC_ALT)
3662    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CMAC_ALT);
3663#endif /* MBEDTLS_CMAC_ALT */
3664
3665#if defined(MBEDTLS_DES_ALT)
3666    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_DES_ALT);
3667#endif /* MBEDTLS_DES_ALT */
3668
3669#if defined(MBEDTLS_DHM_ALT)
3670    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_DHM_ALT);
3671#endif /* MBEDTLS_DHM_ALT */
3672
3673#if defined(MBEDTLS_ECJPAKE_ALT)
3674    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECJPAKE_ALT);
3675#endif /* MBEDTLS_ECJPAKE_ALT */
3676
3677#if defined(MBEDTLS_GCM_ALT)
3678    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_GCM_ALT);
3679#endif /* MBEDTLS_GCM_ALT */
3680
3681#if defined(MBEDTLS_NIST_KW_ALT)
3682    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_NIST_KW_ALT);
3683#endif /* MBEDTLS_NIST_KW_ALT */
3684
3685#if defined(MBEDTLS_MD5_ALT)
3686    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_MD5_ALT);
3687#endif /* MBEDTLS_MD5_ALT */
3688
3689#if defined(MBEDTLS_POLY1305_ALT)
3690    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_POLY1305_ALT);
3691#endif /* MBEDTLS_POLY1305_ALT */
3692
3693#if defined(MBEDTLS_RIPEMD160_ALT)
3694    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_RIPEMD160_ALT);
3695#endif /* MBEDTLS_RIPEMD160_ALT */
3696
3697#if defined(MBEDTLS_RSA_ALT)
3698    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_RSA_ALT);
3699#endif /* MBEDTLS_RSA_ALT */
3700
3701#if defined(MBEDTLS_SHA1_ALT)
3702    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SHA1_ALT);
3703#endif /* MBEDTLS_SHA1_ALT */
3704
3705#if defined(MBEDTLS_SHA256_ALT)
3706    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SHA256_ALT);
3707#endif /* MBEDTLS_SHA256_ALT */
3708
3709#if defined(MBEDTLS_SHA512_ALT)
3710    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SHA512_ALT);
3711#endif /* MBEDTLS_SHA512_ALT */
3712
3713#if defined(MBEDTLS_ECP_ALT)
3714    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_ALT);
3715#endif /* MBEDTLS_ECP_ALT */
3716
3717#if defined(MBEDTLS_MD5_PROCESS_ALT)
3718    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_MD5_PROCESS_ALT);
3719#endif /* MBEDTLS_MD5_PROCESS_ALT */
3720
3721#if defined(MBEDTLS_RIPEMD160_PROCESS_ALT)
3722    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_RIPEMD160_PROCESS_ALT);
3723#endif /* MBEDTLS_RIPEMD160_PROCESS_ALT */
3724
3725#if defined(MBEDTLS_SHA1_PROCESS_ALT)
3726    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SHA1_PROCESS_ALT);
3727#endif /* MBEDTLS_SHA1_PROCESS_ALT */
3728
3729#if defined(MBEDTLS_SHA256_PROCESS_ALT)
3730    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SHA256_PROCESS_ALT);
3731#endif /* MBEDTLS_SHA256_PROCESS_ALT */
3732
3733#if defined(MBEDTLS_SHA512_PROCESS_ALT)
3734    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SHA512_PROCESS_ALT);
3735#endif /* MBEDTLS_SHA512_PROCESS_ALT */
3736
3737#if defined(MBEDTLS_DES_SETKEY_ALT)
3738    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_DES_SETKEY_ALT);
3739#endif /* MBEDTLS_DES_SETKEY_ALT */
3740
3741#if defined(MBEDTLS_DES_CRYPT_ECB_ALT)
3742    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_DES_CRYPT_ECB_ALT);
3743#endif /* MBEDTLS_DES_CRYPT_ECB_ALT */
3744
3745#if defined(MBEDTLS_DES3_CRYPT_ECB_ALT)
3746    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_DES3_CRYPT_ECB_ALT);
3747#endif /* MBEDTLS_DES3_CRYPT_ECB_ALT */
3748
3749#if defined(MBEDTLS_AES_SETKEY_ENC_ALT)
3750    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_AES_SETKEY_ENC_ALT);
3751#endif /* MBEDTLS_AES_SETKEY_ENC_ALT */
3752
3753#if defined(MBEDTLS_AES_SETKEY_DEC_ALT)
3754    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_AES_SETKEY_DEC_ALT);
3755#endif /* MBEDTLS_AES_SETKEY_DEC_ALT */
3756
3757#if defined(MBEDTLS_AES_ENCRYPT_ALT)
3758    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_AES_ENCRYPT_ALT);
3759#endif /* MBEDTLS_AES_ENCRYPT_ALT */
3760
3761#if defined(MBEDTLS_AES_DECRYPT_ALT)
3762    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_AES_DECRYPT_ALT);
3763#endif /* MBEDTLS_AES_DECRYPT_ALT */
3764
3765#if defined(MBEDTLS_ECDH_GEN_PUBLIC_ALT)
3766    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECDH_GEN_PUBLIC_ALT);
3767#endif /* MBEDTLS_ECDH_GEN_PUBLIC_ALT */
3768
3769#if defined(MBEDTLS_ECDH_COMPUTE_SHARED_ALT)
3770    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECDH_COMPUTE_SHARED_ALT);
3771#endif /* MBEDTLS_ECDH_COMPUTE_SHARED_ALT */
3772
3773#if defined(MBEDTLS_ECDSA_VERIFY_ALT)
3774    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECDSA_VERIFY_ALT);
3775#endif /* MBEDTLS_ECDSA_VERIFY_ALT */
3776
3777#if defined(MBEDTLS_ECDSA_SIGN_ALT)
3778    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECDSA_SIGN_ALT);
3779#endif /* MBEDTLS_ECDSA_SIGN_ALT */
3780
3781#if defined(MBEDTLS_ECDSA_GENKEY_ALT)
3782    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECDSA_GENKEY_ALT);
3783#endif /* MBEDTLS_ECDSA_GENKEY_ALT */
3784
3785#if defined(MBEDTLS_ECP_INTERNAL_ALT)
3786    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_INTERNAL_ALT);
3787#endif /* MBEDTLS_ECP_INTERNAL_ALT */
3788
3789#if defined(MBEDTLS_ECP_NO_FALLBACK)
3790    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_NO_FALLBACK);
3791#endif /* MBEDTLS_ECP_NO_FALLBACK */
3792
3793#if defined(MBEDTLS_ECP_RANDOMIZE_JAC_ALT)
3794    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_RANDOMIZE_JAC_ALT);
3795#endif /* MBEDTLS_ECP_RANDOMIZE_JAC_ALT */
3796
3797#if defined(MBEDTLS_ECP_ADD_MIXED_ALT)
3798    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_ADD_MIXED_ALT);
3799#endif /* MBEDTLS_ECP_ADD_MIXED_ALT */
3800
3801#if defined(MBEDTLS_ECP_DOUBLE_JAC_ALT)
3802    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_DOUBLE_JAC_ALT);
3803#endif /* MBEDTLS_ECP_DOUBLE_JAC_ALT */
3804
3805#if defined(MBEDTLS_ECP_NORMALIZE_JAC_MANY_ALT)
3806    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_NORMALIZE_JAC_MANY_ALT);
3807#endif /* MBEDTLS_ECP_NORMALIZE_JAC_MANY_ALT */
3808
3809#if defined(MBEDTLS_ECP_NORMALIZE_JAC_ALT)
3810    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_NORMALIZE_JAC_ALT);
3811#endif /* MBEDTLS_ECP_NORMALIZE_JAC_ALT */
3812
3813#if defined(MBEDTLS_ECP_DOUBLE_ADD_MXZ_ALT)
3814    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_DOUBLE_ADD_MXZ_ALT);
3815#endif /* MBEDTLS_ECP_DOUBLE_ADD_MXZ_ALT */
3816
3817#if defined(MBEDTLS_ECP_RANDOMIZE_MXZ_ALT)
3818    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_RANDOMIZE_MXZ_ALT);
3819#endif /* MBEDTLS_ECP_RANDOMIZE_MXZ_ALT */
3820
3821#if defined(MBEDTLS_ECP_NORMALIZE_MXZ_ALT)
3822    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_NORMALIZE_MXZ_ALT);
3823#endif /* MBEDTLS_ECP_NORMALIZE_MXZ_ALT */
3824
3825#if defined(MBEDTLS_ENTROPY_HARDWARE_ALT)
3826    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ENTROPY_HARDWARE_ALT);
3827#endif /* MBEDTLS_ENTROPY_HARDWARE_ALT */
3828
3829#if defined(MBEDTLS_AES_ROM_TABLES)
3830    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_AES_ROM_TABLES);
3831#endif /* MBEDTLS_AES_ROM_TABLES */
3832
3833#if defined(MBEDTLS_AES_FEWER_TABLES)
3834    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_AES_FEWER_TABLES);
3835#endif /* MBEDTLS_AES_FEWER_TABLES */
3836
3837#if defined(MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH)
3838    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH);
3839#endif /* MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH */
3840
3841#if defined(MBEDTLS_AES_USE_HARDWARE_ONLY)
3842    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_AES_USE_HARDWARE_ONLY);
3843#endif /* MBEDTLS_AES_USE_HARDWARE_ONLY */
3844
3845#if defined(MBEDTLS_CAMELLIA_SMALL_MEMORY)
3846    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CAMELLIA_SMALL_MEMORY);
3847#endif /* MBEDTLS_CAMELLIA_SMALL_MEMORY */
3848
3849#if defined(MBEDTLS_CHECK_RETURN_WARNING)
3850    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CHECK_RETURN_WARNING);
3851#endif /* MBEDTLS_CHECK_RETURN_WARNING */
3852
3853#if defined(MBEDTLS_CIPHER_MODE_CBC)
3854    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CIPHER_MODE_CBC);
3855#endif /* MBEDTLS_CIPHER_MODE_CBC */
3856
3857#if defined(MBEDTLS_CIPHER_MODE_CFB)
3858    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CIPHER_MODE_CFB);
3859#endif /* MBEDTLS_CIPHER_MODE_CFB */
3860
3861#if defined(MBEDTLS_CIPHER_MODE_CTR)
3862    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CIPHER_MODE_CTR);
3863#endif /* MBEDTLS_CIPHER_MODE_CTR */
3864
3865#if defined(MBEDTLS_CIPHER_MODE_OFB)
3866    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CIPHER_MODE_OFB);
3867#endif /* MBEDTLS_CIPHER_MODE_OFB */
3868
3869#if defined(MBEDTLS_CIPHER_MODE_XTS)
3870    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CIPHER_MODE_XTS);
3871#endif /* MBEDTLS_CIPHER_MODE_XTS */
3872
3873#if defined(MBEDTLS_CIPHER_NULL_CIPHER)
3874    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CIPHER_NULL_CIPHER);
3875#endif /* MBEDTLS_CIPHER_NULL_CIPHER */
3876
3877#if defined(MBEDTLS_CIPHER_PADDING_PKCS7)
3878    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CIPHER_PADDING_PKCS7);
3879#endif /* MBEDTLS_CIPHER_PADDING_PKCS7 */
3880
3881#if defined(MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS)
3882    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS);
3883#endif /* MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS */
3884
3885#if defined(MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN)
3886    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN);
3887#endif /* MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN */
3888
3889#if defined(MBEDTLS_CIPHER_PADDING_ZEROS)
3890    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CIPHER_PADDING_ZEROS);
3891#endif /* MBEDTLS_CIPHER_PADDING_ZEROS */
3892
3893#if defined(MBEDTLS_CTR_DRBG_USE_128_BIT_KEY)
3894    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CTR_DRBG_USE_128_BIT_KEY);
3895#endif /* MBEDTLS_CTR_DRBG_USE_128_BIT_KEY */
3896
3897#if defined(MBEDTLS_ECDH_VARIANT_EVEREST_ENABLED)
3898    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECDH_VARIANT_EVEREST_ENABLED);
3899#endif /* MBEDTLS_ECDH_VARIANT_EVEREST_ENABLED */
3900
3901#if defined(MBEDTLS_ECP_DP_SECP192R1_ENABLED)
3902    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_DP_SECP192R1_ENABLED);
3903#endif /* MBEDTLS_ECP_DP_SECP192R1_ENABLED */
3904
3905#if defined(MBEDTLS_ECP_DP_SECP224R1_ENABLED)
3906    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_DP_SECP224R1_ENABLED);
3907#endif /* MBEDTLS_ECP_DP_SECP224R1_ENABLED */
3908
3909#if defined(MBEDTLS_ECP_DP_SECP256R1_ENABLED)
3910    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_DP_SECP256R1_ENABLED);
3911#endif /* MBEDTLS_ECP_DP_SECP256R1_ENABLED */
3912
3913#if defined(MBEDTLS_ECP_DP_SECP384R1_ENABLED)
3914    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_DP_SECP384R1_ENABLED);
3915#endif /* MBEDTLS_ECP_DP_SECP384R1_ENABLED */
3916
3917#if defined(MBEDTLS_ECP_DP_SECP521R1_ENABLED)
3918    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_DP_SECP521R1_ENABLED);
3919#endif /* MBEDTLS_ECP_DP_SECP521R1_ENABLED */
3920
3921#if defined(MBEDTLS_ECP_DP_SECP192K1_ENABLED)
3922    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_DP_SECP192K1_ENABLED);
3923#endif /* MBEDTLS_ECP_DP_SECP192K1_ENABLED */
3924
3925#if defined(MBEDTLS_ECP_DP_SECP224K1_ENABLED)
3926    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_DP_SECP224K1_ENABLED);
3927#endif /* MBEDTLS_ECP_DP_SECP224K1_ENABLED */
3928
3929#if defined(MBEDTLS_ECP_DP_SECP256K1_ENABLED)
3930    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_DP_SECP256K1_ENABLED);
3931#endif /* MBEDTLS_ECP_DP_SECP256K1_ENABLED */
3932
3933#if defined(MBEDTLS_ECP_DP_BP256R1_ENABLED)
3934    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_DP_BP256R1_ENABLED);
3935#endif /* MBEDTLS_ECP_DP_BP256R1_ENABLED */
3936
3937#if defined(MBEDTLS_ECP_DP_BP384R1_ENABLED)
3938    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_DP_BP384R1_ENABLED);
3939#endif /* MBEDTLS_ECP_DP_BP384R1_ENABLED */
3940
3941#if defined(MBEDTLS_ECP_DP_BP512R1_ENABLED)
3942    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_DP_BP512R1_ENABLED);
3943#endif /* MBEDTLS_ECP_DP_BP512R1_ENABLED */
3944
3945#if defined(MBEDTLS_ECP_DP_CURVE25519_ENABLED)
3946    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_DP_CURVE25519_ENABLED);
3947#endif /* MBEDTLS_ECP_DP_CURVE25519_ENABLED */
3948
3949#if defined(MBEDTLS_ECP_DP_CURVE448_ENABLED)
3950    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_DP_CURVE448_ENABLED);
3951#endif /* MBEDTLS_ECP_DP_CURVE448_ENABLED */
3952
3953#if defined(MBEDTLS_ECP_NIST_OPTIM)
3954    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_NIST_OPTIM);
3955#endif /* MBEDTLS_ECP_NIST_OPTIM */
3956
3957#if defined(MBEDTLS_ECP_RESTARTABLE)
3958    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_RESTARTABLE);
3959#endif /* MBEDTLS_ECP_RESTARTABLE */
3960
3961#if defined(MBEDTLS_ECP_WITH_MPI_UINT)
3962    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_WITH_MPI_UINT);
3963#endif /* MBEDTLS_ECP_WITH_MPI_UINT */
3964
3965#if defined(MBEDTLS_ECDSA_DETERMINISTIC)
3966    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECDSA_DETERMINISTIC);
3967#endif /* MBEDTLS_ECDSA_DETERMINISTIC */
3968
3969#if defined(MBEDTLS_KEY_EXCHANGE_PSK_ENABLED)
3970    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_KEY_EXCHANGE_PSK_ENABLED);
3971#endif /* MBEDTLS_KEY_EXCHANGE_PSK_ENABLED */
3972
3973#if defined(MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED)
3974    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED);
3975#endif /* MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED */
3976
3977#if defined(MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED)
3978    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED);
3979#endif /* MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED */
3980
3981#if defined(MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED)
3982    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED);
3983#endif /* MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED */
3984
3985#if defined(MBEDTLS_KEY_EXCHANGE_RSA_ENABLED)
3986    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_KEY_EXCHANGE_RSA_ENABLED);
3987#endif /* MBEDTLS_KEY_EXCHANGE_RSA_ENABLED */
3988
3989#if defined(MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED)
3990    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED);
3991#endif /* MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED */
3992
3993#if defined(MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED)
3994    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED);
3995#endif /* MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED */
3996
3997#if defined(MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED)
3998    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED);
3999#endif /* MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED */
4000
4001#if defined(MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA_ENABLED)
4002    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA_ENABLED);
4003#endif /* MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA_ENABLED */
4004
4005#if defined(MBEDTLS_KEY_EXCHANGE_ECDH_RSA_ENABLED)
4006    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_KEY_EXCHANGE_ECDH_RSA_ENABLED);
4007#endif /* MBEDTLS_KEY_EXCHANGE_ECDH_RSA_ENABLED */
4008
4009#if defined(MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED)
4010    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED);
4011#endif /* MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED */
4012
4013#if defined(MBEDTLS_PK_PARSE_EC_EXTENDED)
4014    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PK_PARSE_EC_EXTENDED);
4015#endif /* MBEDTLS_PK_PARSE_EC_EXTENDED */
4016
4017#if defined(MBEDTLS_PK_PARSE_EC_COMPRESSED)
4018    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PK_PARSE_EC_COMPRESSED);
4019#endif /* MBEDTLS_PK_PARSE_EC_COMPRESSED */
4020
4021#if defined(MBEDTLS_ERROR_STRERROR_DUMMY)
4022    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ERROR_STRERROR_DUMMY);
4023#endif /* MBEDTLS_ERROR_STRERROR_DUMMY */
4024
4025#if defined(MBEDTLS_GENPRIME)
4026    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_GENPRIME);
4027#endif /* MBEDTLS_GENPRIME */
4028
4029#if defined(MBEDTLS_FS_IO)
4030    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_FS_IO);
4031#endif /* MBEDTLS_FS_IO */
4032
4033#if defined(MBEDTLS_NO_DEFAULT_ENTROPY_SOURCES)
4034    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_NO_DEFAULT_ENTROPY_SOURCES);
4035#endif /* MBEDTLS_NO_DEFAULT_ENTROPY_SOURCES */
4036
4037#if defined(MBEDTLS_NO_PLATFORM_ENTROPY)
4038    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_NO_PLATFORM_ENTROPY);
4039#endif /* MBEDTLS_NO_PLATFORM_ENTROPY */
4040
4041#if defined(MBEDTLS_ENTROPY_FORCE_SHA256)
4042    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ENTROPY_FORCE_SHA256);
4043#endif /* MBEDTLS_ENTROPY_FORCE_SHA256 */
4044
4045#if defined(MBEDTLS_ENTROPY_NV_SEED)
4046    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ENTROPY_NV_SEED);
4047#endif /* MBEDTLS_ENTROPY_NV_SEED */
4048
4049#if defined(MBEDTLS_PSA_CRYPTO_KEY_ID_ENCODES_OWNER)
4050    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PSA_CRYPTO_KEY_ID_ENCODES_OWNER);
4051#endif /* MBEDTLS_PSA_CRYPTO_KEY_ID_ENCODES_OWNER */
4052
4053#if defined(MBEDTLS_MEMORY_DEBUG)
4054    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_MEMORY_DEBUG);
4055#endif /* MBEDTLS_MEMORY_DEBUG */
4056
4057#if defined(MBEDTLS_MEMORY_BACKTRACE)
4058    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_MEMORY_BACKTRACE);
4059#endif /* MBEDTLS_MEMORY_BACKTRACE */
4060
4061#if defined(MBEDTLS_PK_RSA_ALT_SUPPORT)
4062    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PK_RSA_ALT_SUPPORT);
4063#endif /* MBEDTLS_PK_RSA_ALT_SUPPORT */
4064
4065#if defined(MBEDTLS_PKCS1_V15)
4066    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PKCS1_V15);
4067#endif /* MBEDTLS_PKCS1_V15 */
4068
4069#if defined(MBEDTLS_PKCS1_V21)
4070    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PKCS1_V21);
4071#endif /* MBEDTLS_PKCS1_V21 */
4072
4073#if defined(MBEDTLS_PSA_CRYPTO_BUILTIN_KEYS)
4074    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PSA_CRYPTO_BUILTIN_KEYS);
4075#endif /* MBEDTLS_PSA_CRYPTO_BUILTIN_KEYS */
4076
4077#if defined(MBEDTLS_PSA_CRYPTO_CLIENT)
4078    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PSA_CRYPTO_CLIENT);
4079#endif /* MBEDTLS_PSA_CRYPTO_CLIENT */
4080
4081#if defined(MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG)
4082    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG);
4083#endif /* MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG */
4084
4085#if defined(MBEDTLS_PSA_CRYPTO_SPM)
4086    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PSA_CRYPTO_SPM);
4087#endif /* MBEDTLS_PSA_CRYPTO_SPM */
4088
4089#if defined(MBEDTLS_PSA_P256M_DRIVER_ENABLED)
4090    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PSA_P256M_DRIVER_ENABLED);
4091#endif /* MBEDTLS_PSA_P256M_DRIVER_ENABLED */
4092
4093#if defined(MBEDTLS_PSA_INJECT_ENTROPY)
4094    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PSA_INJECT_ENTROPY);
4095#endif /* MBEDTLS_PSA_INJECT_ENTROPY */
4096
4097#if defined(MBEDTLS_PSA_ASSUME_EXCLUSIVE_BUFFERS)
4098    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PSA_ASSUME_EXCLUSIVE_BUFFERS);
4099#endif /* MBEDTLS_PSA_ASSUME_EXCLUSIVE_BUFFERS */
4100
4101#if defined(MBEDTLS_RSA_NO_CRT)
4102    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_RSA_NO_CRT);
4103#endif /* MBEDTLS_RSA_NO_CRT */
4104
4105#if defined(MBEDTLS_SELF_TEST)
4106    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SELF_TEST);
4107#endif /* MBEDTLS_SELF_TEST */
4108
4109#if defined(MBEDTLS_SHA256_SMALLER)
4110    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SHA256_SMALLER);
4111#endif /* MBEDTLS_SHA256_SMALLER */
4112
4113#if defined(MBEDTLS_SHA512_SMALLER)
4114    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SHA512_SMALLER);
4115#endif /* MBEDTLS_SHA512_SMALLER */
4116
4117#if defined(MBEDTLS_SSL_ALL_ALERT_MESSAGES)
4118    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_ALL_ALERT_MESSAGES);
4119#endif /* MBEDTLS_SSL_ALL_ALERT_MESSAGES */
4120
4121#if defined(MBEDTLS_SSL_DTLS_CONNECTION_ID)
4122    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_DTLS_CONNECTION_ID);
4123#endif /* MBEDTLS_SSL_DTLS_CONNECTION_ID */
4124
4125#if defined(MBEDTLS_SSL_DTLS_CONNECTION_ID_COMPAT)
4126    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_DTLS_CONNECTION_ID_COMPAT);
4127#endif /* MBEDTLS_SSL_DTLS_CONNECTION_ID_COMPAT */
4128
4129#if defined(MBEDTLS_SSL_ASYNC_PRIVATE)
4130    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_ASYNC_PRIVATE);
4131#endif /* MBEDTLS_SSL_ASYNC_PRIVATE */
4132
4133#if defined(MBEDTLS_SSL_CONTEXT_SERIALIZATION)
4134    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_CONTEXT_SERIALIZATION);
4135#endif /* MBEDTLS_SSL_CONTEXT_SERIALIZATION */
4136
4137#if defined(MBEDTLS_SSL_DEBUG_ALL)
4138    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_DEBUG_ALL);
4139#endif /* MBEDTLS_SSL_DEBUG_ALL */
4140
4141#if defined(MBEDTLS_SSL_ENCRYPT_THEN_MAC)
4142    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_ENCRYPT_THEN_MAC);
4143#endif /* MBEDTLS_SSL_ENCRYPT_THEN_MAC */
4144
4145#if defined(MBEDTLS_SSL_EXTENDED_MASTER_SECRET)
4146    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_EXTENDED_MASTER_SECRET);
4147#endif /* MBEDTLS_SSL_EXTENDED_MASTER_SECRET */
4148
4149#if defined(MBEDTLS_SSL_KEEP_PEER_CERTIFICATE)
4150    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_KEEP_PEER_CERTIFICATE);
4151#endif /* MBEDTLS_SSL_KEEP_PEER_CERTIFICATE */
4152
4153#if defined(MBEDTLS_SSL_RENEGOTIATION)
4154    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_RENEGOTIATION);
4155#endif /* MBEDTLS_SSL_RENEGOTIATION */
4156
4157#if defined(MBEDTLS_SSL_MAX_FRAGMENT_LENGTH)
4158    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_MAX_FRAGMENT_LENGTH);
4159#endif /* MBEDTLS_SSL_MAX_FRAGMENT_LENGTH */
4160
4161#if defined(MBEDTLS_SSL_RECORD_SIZE_LIMIT)
4162    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_RECORD_SIZE_LIMIT);
4163#endif /* MBEDTLS_SSL_RECORD_SIZE_LIMIT */
4164
4165#if defined(MBEDTLS_SSL_PROTO_TLS1_2)
4166    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_PROTO_TLS1_2);
4167#endif /* MBEDTLS_SSL_PROTO_TLS1_2 */
4168
4169#if defined(MBEDTLS_SSL_PROTO_TLS1_3)
4170    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_PROTO_TLS1_3);
4171#endif /* MBEDTLS_SSL_PROTO_TLS1_3 */
4172
4173#if defined(MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE)
4174    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE);
4175#endif /* MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE */
4176
4177#if defined(MBEDTLS_SSL_TLS1_3_KEY_EXCHANGE_MODE_PSK_ENABLED)
4178    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_TLS1_3_KEY_EXCHANGE_MODE_PSK_ENABLED);
4179#endif /* MBEDTLS_SSL_TLS1_3_KEY_EXCHANGE_MODE_PSK_ENABLED */
4180
4181#if defined(MBEDTLS_SSL_TLS1_3_KEY_EXCHANGE_MODE_EPHEMERAL_ENABLED)
4182    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_TLS1_3_KEY_EXCHANGE_MODE_EPHEMERAL_ENABLED);
4183#endif /* MBEDTLS_SSL_TLS1_3_KEY_EXCHANGE_MODE_EPHEMERAL_ENABLED */
4184
4185#if defined(MBEDTLS_SSL_TLS1_3_KEY_EXCHANGE_MODE_PSK_EPHEMERAL_ENABLED)
4186    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_TLS1_3_KEY_EXCHANGE_MODE_PSK_EPHEMERAL_ENABLED);
4187#endif /* MBEDTLS_SSL_TLS1_3_KEY_EXCHANGE_MODE_PSK_EPHEMERAL_ENABLED */
4188
4189#if defined(MBEDTLS_SSL_EARLY_DATA)
4190    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_EARLY_DATA);
4191#endif /* MBEDTLS_SSL_EARLY_DATA */
4192
4193#if defined(MBEDTLS_SSL_PROTO_DTLS)
4194    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_PROTO_DTLS);
4195#endif /* MBEDTLS_SSL_PROTO_DTLS */
4196
4197#if defined(MBEDTLS_SSL_ALPN)
4198    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_ALPN);
4199#endif /* MBEDTLS_SSL_ALPN */
4200
4201#if defined(MBEDTLS_SSL_DTLS_ANTI_REPLAY)
4202    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_DTLS_ANTI_REPLAY);
4203#endif /* MBEDTLS_SSL_DTLS_ANTI_REPLAY */
4204
4205#if defined(MBEDTLS_SSL_DTLS_HELLO_VERIFY)
4206    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_DTLS_HELLO_VERIFY);
4207#endif /* MBEDTLS_SSL_DTLS_HELLO_VERIFY */
4208
4209#if defined(MBEDTLS_SSL_DTLS_SRTP)
4210    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_DTLS_SRTP);
4211#endif /* MBEDTLS_SSL_DTLS_SRTP */
4212
4213#if defined(MBEDTLS_SSL_DTLS_CLIENT_PORT_REUSE)
4214    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_DTLS_CLIENT_PORT_REUSE);
4215#endif /* MBEDTLS_SSL_DTLS_CLIENT_PORT_REUSE */
4216
4217#if defined(MBEDTLS_SSL_SESSION_TICKETS)
4218    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_SESSION_TICKETS);
4219#endif /* MBEDTLS_SSL_SESSION_TICKETS */
4220
4221#if defined(MBEDTLS_SSL_SERVER_NAME_INDICATION)
4222    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_SERVER_NAME_INDICATION);
4223#endif /* MBEDTLS_SSL_SERVER_NAME_INDICATION */
4224
4225#if defined(MBEDTLS_SSL_VARIABLE_BUFFER_LENGTH)
4226    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_VARIABLE_BUFFER_LENGTH);
4227#endif /* MBEDTLS_SSL_VARIABLE_BUFFER_LENGTH */
4228
4229#if defined(MBEDTLS_TEST_CONSTANT_FLOW_MEMSAN)
4230    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_TEST_CONSTANT_FLOW_MEMSAN);
4231#endif /* MBEDTLS_TEST_CONSTANT_FLOW_MEMSAN */
4232
4233#if defined(MBEDTLS_TEST_CONSTANT_FLOW_VALGRIND)
4234    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_TEST_CONSTANT_FLOW_VALGRIND);
4235#endif /* MBEDTLS_TEST_CONSTANT_FLOW_VALGRIND */
4236
4237#if defined(MBEDTLS_TEST_HOOKS)
4238    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_TEST_HOOKS);
4239#endif /* MBEDTLS_TEST_HOOKS */
4240
4241#if defined(MBEDTLS_THREADING_ALT)
4242    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_THREADING_ALT);
4243#endif /* MBEDTLS_THREADING_ALT */
4244
4245#if defined(MBEDTLS_THREADING_PTHREAD)
4246    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_THREADING_PTHREAD);
4247#endif /* MBEDTLS_THREADING_PTHREAD */
4248
4249#if defined(MBEDTLS_USE_PSA_CRYPTO)
4250    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_USE_PSA_CRYPTO);
4251#endif /* MBEDTLS_USE_PSA_CRYPTO */
4252
4253#if defined(MBEDTLS_PSA_CRYPTO_CONFIG)
4254    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PSA_CRYPTO_CONFIG);
4255#endif /* MBEDTLS_PSA_CRYPTO_CONFIG */
4256
4257#if defined(MBEDTLS_VERSION_FEATURES)
4258    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_VERSION_FEATURES);
4259#endif /* MBEDTLS_VERSION_FEATURES */
4260
4261#if defined(MBEDTLS_X509_TRUSTED_CERTIFICATE_CALLBACK)
4262    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_X509_TRUSTED_CERTIFICATE_CALLBACK);
4263#endif /* MBEDTLS_X509_TRUSTED_CERTIFICATE_CALLBACK */
4264
4265#if defined(MBEDTLS_X509_REMOVE_INFO)
4266    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_X509_REMOVE_INFO);
4267#endif /* MBEDTLS_X509_REMOVE_INFO */
4268
4269#if defined(MBEDTLS_X509_RSASSA_PSS_SUPPORT)
4270    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_X509_RSASSA_PSS_SUPPORT);
4271#endif /* MBEDTLS_X509_RSASSA_PSS_SUPPORT */
4272
4273#if defined(MBEDTLS_AESNI_C)
4274    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_AESNI_C);
4275#endif /* MBEDTLS_AESNI_C */
4276
4277#if defined(MBEDTLS_AESCE_C)
4278    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_AESCE_C);
4279#endif /* MBEDTLS_AESCE_C */
4280
4281#if defined(MBEDTLS_AES_C)
4282    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_AES_C);
4283#endif /* MBEDTLS_AES_C */
4284
4285#if defined(MBEDTLS_ASN1_PARSE_C)
4286    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ASN1_PARSE_C);
4287#endif /* MBEDTLS_ASN1_PARSE_C */
4288
4289#if defined(MBEDTLS_ASN1_WRITE_C)
4290    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ASN1_WRITE_C);
4291#endif /* MBEDTLS_ASN1_WRITE_C */
4292
4293#if defined(MBEDTLS_BASE64_C)
4294    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_BASE64_C);
4295#endif /* MBEDTLS_BASE64_C */
4296
4297#if defined(MBEDTLS_BLOCK_CIPHER_NO_DECRYPT)
4298    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_BLOCK_CIPHER_NO_DECRYPT);
4299#endif /* MBEDTLS_BLOCK_CIPHER_NO_DECRYPT */
4300
4301#if defined(MBEDTLS_BIGNUM_C)
4302    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_BIGNUM_C);
4303#endif /* MBEDTLS_BIGNUM_C */
4304
4305#if defined(MBEDTLS_CAMELLIA_C)
4306    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CAMELLIA_C);
4307#endif /* MBEDTLS_CAMELLIA_C */
4308
4309#if defined(MBEDTLS_ARIA_C)
4310    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ARIA_C);
4311#endif /* MBEDTLS_ARIA_C */
4312
4313#if defined(MBEDTLS_CCM_C)
4314    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CCM_C);
4315#endif /* MBEDTLS_CCM_C */
4316
4317#if defined(MBEDTLS_CHACHA20_C)
4318    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CHACHA20_C);
4319#endif /* MBEDTLS_CHACHA20_C */
4320
4321#if defined(MBEDTLS_CHACHAPOLY_C)
4322    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CHACHAPOLY_C);
4323#endif /* MBEDTLS_CHACHAPOLY_C */
4324
4325#if defined(MBEDTLS_CIPHER_C)
4326    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CIPHER_C);
4327#endif /* MBEDTLS_CIPHER_C */
4328
4329#if defined(MBEDTLS_CMAC_C)
4330    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CMAC_C);
4331#endif /* MBEDTLS_CMAC_C */
4332
4333#if defined(MBEDTLS_CTR_DRBG_C)
4334    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CTR_DRBG_C);
4335#endif /* MBEDTLS_CTR_DRBG_C */
4336
4337#if defined(MBEDTLS_DEBUG_C)
4338    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_DEBUG_C);
4339#endif /* MBEDTLS_DEBUG_C */
4340
4341#if defined(MBEDTLS_DES_C)
4342    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_DES_C);
4343#endif /* MBEDTLS_DES_C */
4344
4345#if defined(MBEDTLS_DHM_C)
4346    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_DHM_C);
4347#endif /* MBEDTLS_DHM_C */
4348
4349#if defined(MBEDTLS_ECDH_C)
4350    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECDH_C);
4351#endif /* MBEDTLS_ECDH_C */
4352
4353#if defined(MBEDTLS_ECDSA_C)
4354    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECDSA_C);
4355#endif /* MBEDTLS_ECDSA_C */
4356
4357#if defined(MBEDTLS_ECJPAKE_C)
4358    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECJPAKE_C);
4359#endif /* MBEDTLS_ECJPAKE_C */
4360
4361#if defined(MBEDTLS_ECP_C)
4362    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_C);
4363#endif /* MBEDTLS_ECP_C */
4364
4365#if defined(MBEDTLS_ENTROPY_C)
4366    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ENTROPY_C);
4367#endif /* MBEDTLS_ENTROPY_C */
4368
4369#if defined(MBEDTLS_ERROR_C)
4370    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ERROR_C);
4371#endif /* MBEDTLS_ERROR_C */
4372
4373#if defined(MBEDTLS_GCM_C)
4374    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_GCM_C);
4375#endif /* MBEDTLS_GCM_C */
4376
4377#if defined(MBEDTLS_GCM_LARGE_TABLE)
4378    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_GCM_LARGE_TABLE);
4379#endif /* MBEDTLS_GCM_LARGE_TABLE */
4380
4381#if defined(MBEDTLS_HKDF_C)
4382    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_HKDF_C);
4383#endif /* MBEDTLS_HKDF_C */
4384
4385#if defined(MBEDTLS_HMAC_DRBG_C)
4386    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_HMAC_DRBG_C);
4387#endif /* MBEDTLS_HMAC_DRBG_C */
4388
4389#if defined(MBEDTLS_LMS_C)
4390    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_LMS_C);
4391#endif /* MBEDTLS_LMS_C */
4392
4393#if defined(MBEDTLS_LMS_PRIVATE)
4394    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_LMS_PRIVATE);
4395#endif /* MBEDTLS_LMS_PRIVATE */
4396
4397#if defined(MBEDTLS_NIST_KW_C)
4398    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_NIST_KW_C);
4399#endif /* MBEDTLS_NIST_KW_C */
4400
4401#if defined(MBEDTLS_MD_C)
4402    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_MD_C);
4403#endif /* MBEDTLS_MD_C */
4404
4405#if defined(MBEDTLS_MD5_C)
4406    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_MD5_C);
4407#endif /* MBEDTLS_MD5_C */
4408
4409#if defined(MBEDTLS_MEMORY_BUFFER_ALLOC_C)
4410    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_MEMORY_BUFFER_ALLOC_C);
4411#endif /* MBEDTLS_MEMORY_BUFFER_ALLOC_C */
4412
4413#if defined(MBEDTLS_NET_C)
4414    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_NET_C);
4415#endif /* MBEDTLS_NET_C */
4416
4417#if defined(MBEDTLS_OID_C)
4418    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_OID_C);
4419#endif /* MBEDTLS_OID_C */
4420
4421#if defined(MBEDTLS_PADLOCK_C)
4422    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PADLOCK_C);
4423#endif /* MBEDTLS_PADLOCK_C */
4424
4425#if defined(MBEDTLS_PEM_PARSE_C)
4426    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PEM_PARSE_C);
4427#endif /* MBEDTLS_PEM_PARSE_C */
4428
4429#if defined(MBEDTLS_PEM_WRITE_C)
4430    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PEM_WRITE_C);
4431#endif /* MBEDTLS_PEM_WRITE_C */
4432
4433#if defined(MBEDTLS_PK_C)
4434    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PK_C);
4435#endif /* MBEDTLS_PK_C */
4436
4437#if defined(MBEDTLS_PK_PARSE_C)
4438    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PK_PARSE_C);
4439#endif /* MBEDTLS_PK_PARSE_C */
4440
4441#if defined(MBEDTLS_PK_WRITE_C)
4442    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PK_WRITE_C);
4443#endif /* MBEDTLS_PK_WRITE_C */
4444
4445#if defined(MBEDTLS_PKCS5_C)
4446    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PKCS5_C);
4447#endif /* MBEDTLS_PKCS5_C */
4448
4449#if defined(MBEDTLS_PKCS7_C)
4450    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PKCS7_C);
4451#endif /* MBEDTLS_PKCS7_C */
4452
4453#if defined(MBEDTLS_PKCS12_C)
4454    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PKCS12_C);
4455#endif /* MBEDTLS_PKCS12_C */
4456
4457#if defined(MBEDTLS_PLATFORM_C)
4458    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_C);
4459#endif /* MBEDTLS_PLATFORM_C */
4460
4461#if defined(MBEDTLS_POLY1305_C)
4462    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_POLY1305_C);
4463#endif /* MBEDTLS_POLY1305_C */
4464
4465#if defined(MBEDTLS_PSA_CRYPTO_C)
4466    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PSA_CRYPTO_C);
4467#endif /* MBEDTLS_PSA_CRYPTO_C */
4468
4469#if defined(MBEDTLS_PSA_CRYPTO_SE_C)
4470    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PSA_CRYPTO_SE_C);
4471#endif /* MBEDTLS_PSA_CRYPTO_SE_C */
4472
4473#if defined(MBEDTLS_PSA_CRYPTO_STORAGE_C)
4474    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PSA_CRYPTO_STORAGE_C);
4475#endif /* MBEDTLS_PSA_CRYPTO_STORAGE_C */
4476
4477#if defined(MBEDTLS_PSA_ITS_FILE_C)
4478    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PSA_ITS_FILE_C);
4479#endif /* MBEDTLS_PSA_ITS_FILE_C */
4480
4481#if defined(MBEDTLS_RIPEMD160_C)
4482    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_RIPEMD160_C);
4483#endif /* MBEDTLS_RIPEMD160_C */
4484
4485#if defined(MBEDTLS_RSA_C)
4486    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_RSA_C);
4487#endif /* MBEDTLS_RSA_C */
4488
4489#if defined(MBEDTLS_SHA1_C)
4490    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SHA1_C);
4491#endif /* MBEDTLS_SHA1_C */
4492
4493#if defined(MBEDTLS_SHA224_C)
4494    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SHA224_C);
4495#endif /* MBEDTLS_SHA224_C */
4496
4497#if defined(MBEDTLS_SHA256_C)
4498    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SHA256_C);
4499#endif /* MBEDTLS_SHA256_C */
4500
4501#if defined(MBEDTLS_SHA256_USE_ARMV8_A_CRYPTO_IF_PRESENT)
4502    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SHA256_USE_ARMV8_A_CRYPTO_IF_PRESENT);
4503#endif /* MBEDTLS_SHA256_USE_ARMV8_A_CRYPTO_IF_PRESENT */
4504
4505#if defined(MBEDTLS_SHA256_USE_A64_CRYPTO_IF_PRESENT)
4506    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SHA256_USE_A64_CRYPTO_IF_PRESENT);
4507#endif /* MBEDTLS_SHA256_USE_A64_CRYPTO_IF_PRESENT */
4508
4509#if defined(MBEDTLS_SHA256_USE_ARMV8_A_CRYPTO_ONLY)
4510    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SHA256_USE_ARMV8_A_CRYPTO_ONLY);
4511#endif /* MBEDTLS_SHA256_USE_ARMV8_A_CRYPTO_ONLY */
4512
4513#if defined(MBEDTLS_SHA256_USE_A64_CRYPTO_ONLY)
4514    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SHA256_USE_A64_CRYPTO_ONLY);
4515#endif /* MBEDTLS_SHA256_USE_A64_CRYPTO_ONLY */
4516
4517#if defined(MBEDTLS_SHA384_C)
4518    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SHA384_C);
4519#endif /* MBEDTLS_SHA384_C */
4520
4521#if defined(MBEDTLS_SHA512_C)
4522    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SHA512_C);
4523#endif /* MBEDTLS_SHA512_C */
4524
4525#if defined(MBEDTLS_SHA3_C)
4526    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SHA3_C);
4527#endif /* MBEDTLS_SHA3_C */
4528
4529#if defined(MBEDTLS_SHA512_USE_A64_CRYPTO_IF_PRESENT)
4530    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SHA512_USE_A64_CRYPTO_IF_PRESENT);
4531#endif /* MBEDTLS_SHA512_USE_A64_CRYPTO_IF_PRESENT */
4532
4533#if defined(MBEDTLS_SHA512_USE_A64_CRYPTO_ONLY)
4534    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SHA512_USE_A64_CRYPTO_ONLY);
4535#endif /* MBEDTLS_SHA512_USE_A64_CRYPTO_ONLY */
4536
4537#if defined(MBEDTLS_SSL_CACHE_C)
4538    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_CACHE_C);
4539#endif /* MBEDTLS_SSL_CACHE_C */
4540
4541#if defined(MBEDTLS_SSL_COOKIE_C)
4542    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_COOKIE_C);
4543#endif /* MBEDTLS_SSL_COOKIE_C */
4544
4545#if defined(MBEDTLS_SSL_TICKET_C)
4546    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_TICKET_C);
4547#endif /* MBEDTLS_SSL_TICKET_C */
4548
4549#if defined(MBEDTLS_SSL_CLI_C)
4550    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_CLI_C);
4551#endif /* MBEDTLS_SSL_CLI_C */
4552
4553#if defined(MBEDTLS_SSL_SRV_C)
4554    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_SRV_C);
4555#endif /* MBEDTLS_SSL_SRV_C */
4556
4557#if defined(MBEDTLS_SSL_TLS_C)
4558    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_TLS_C);
4559#endif /* MBEDTLS_SSL_TLS_C */
4560
4561#if defined(MBEDTLS_THREADING_C)
4562    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_THREADING_C);
4563#endif /* MBEDTLS_THREADING_C */
4564
4565#if defined(MBEDTLS_TIMING_C)
4566    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_TIMING_C);
4567#endif /* MBEDTLS_TIMING_C */
4568
4569#if defined(MBEDTLS_VERSION_C)
4570    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_VERSION_C);
4571#endif /* MBEDTLS_VERSION_C */
4572
4573#if defined(MBEDTLS_X509_USE_C)
4574    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_X509_USE_C);
4575#endif /* MBEDTLS_X509_USE_C */
4576
4577#if defined(MBEDTLS_X509_CRT_PARSE_C)
4578    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_X509_CRT_PARSE_C);
4579#endif /* MBEDTLS_X509_CRT_PARSE_C */
4580
4581#if defined(MBEDTLS_X509_CRL_PARSE_C)
4582    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_X509_CRL_PARSE_C);
4583#endif /* MBEDTLS_X509_CRL_PARSE_C */
4584
4585#if defined(MBEDTLS_X509_CSR_PARSE_C)
4586    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_X509_CSR_PARSE_C);
4587#endif /* MBEDTLS_X509_CSR_PARSE_C */
4588
4589#if defined(MBEDTLS_X509_CREATE_C)
4590    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_X509_CREATE_C);
4591#endif /* MBEDTLS_X509_CREATE_C */
4592
4593#if defined(MBEDTLS_X509_CRT_WRITE_C)
4594    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_X509_CRT_WRITE_C);
4595#endif /* MBEDTLS_X509_CRT_WRITE_C */
4596
4597#if defined(MBEDTLS_X509_CSR_WRITE_C)
4598    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_X509_CSR_WRITE_C);
4599#endif /* MBEDTLS_X509_CSR_WRITE_C */
4600
4601#if defined(MBEDTLS_CONFIG_FILE)
4602    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CONFIG_FILE);
4603#endif /* MBEDTLS_CONFIG_FILE */
4604
4605#if defined(MBEDTLS_USER_CONFIG_FILE)
4606    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_USER_CONFIG_FILE);
4607#endif /* MBEDTLS_USER_CONFIG_FILE */
4608
4609#if defined(MBEDTLS_PSA_CRYPTO_CONFIG_FILE)
4610    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PSA_CRYPTO_CONFIG_FILE);
4611#endif /* MBEDTLS_PSA_CRYPTO_CONFIG_FILE */
4612
4613#if defined(MBEDTLS_PSA_CRYPTO_USER_CONFIG_FILE)
4614    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PSA_CRYPTO_USER_CONFIG_FILE);
4615#endif /* MBEDTLS_PSA_CRYPTO_USER_CONFIG_FILE */
4616
4617#if defined(MBEDTLS_PSA_CRYPTO_PLATFORM_FILE)
4618    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PSA_CRYPTO_PLATFORM_FILE);
4619#endif /* MBEDTLS_PSA_CRYPTO_PLATFORM_FILE */
4620
4621#if defined(MBEDTLS_PSA_CRYPTO_STRUCT_FILE)
4622    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PSA_CRYPTO_STRUCT_FILE);
4623#endif /* MBEDTLS_PSA_CRYPTO_STRUCT_FILE */
4624
4625#if defined(MBEDTLS_MPI_WINDOW_SIZE)
4626    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_MPI_WINDOW_SIZE);
4627#endif /* MBEDTLS_MPI_WINDOW_SIZE */
4628
4629#if defined(MBEDTLS_MPI_MAX_SIZE)
4630    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_MPI_MAX_SIZE);
4631#endif /* MBEDTLS_MPI_MAX_SIZE */
4632
4633#if defined(MBEDTLS_CTR_DRBG_ENTROPY_LEN)
4634    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CTR_DRBG_ENTROPY_LEN);
4635#endif /* MBEDTLS_CTR_DRBG_ENTROPY_LEN */
4636
4637#if defined(MBEDTLS_CTR_DRBG_RESEED_INTERVAL)
4638    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CTR_DRBG_RESEED_INTERVAL);
4639#endif /* MBEDTLS_CTR_DRBG_RESEED_INTERVAL */
4640
4641#if defined(MBEDTLS_CTR_DRBG_MAX_INPUT)
4642    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CTR_DRBG_MAX_INPUT);
4643#endif /* MBEDTLS_CTR_DRBG_MAX_INPUT */
4644
4645#if defined(MBEDTLS_CTR_DRBG_MAX_REQUEST)
4646    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CTR_DRBG_MAX_REQUEST);
4647#endif /* MBEDTLS_CTR_DRBG_MAX_REQUEST */
4648
4649#if defined(MBEDTLS_CTR_DRBG_MAX_SEED_INPUT)
4650    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CTR_DRBG_MAX_SEED_INPUT);
4651#endif /* MBEDTLS_CTR_DRBG_MAX_SEED_INPUT */
4652
4653#if defined(MBEDTLS_HMAC_DRBG_RESEED_INTERVAL)
4654    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_HMAC_DRBG_RESEED_INTERVAL);
4655#endif /* MBEDTLS_HMAC_DRBG_RESEED_INTERVAL */
4656
4657#if defined(MBEDTLS_HMAC_DRBG_MAX_INPUT)
4658    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_HMAC_DRBG_MAX_INPUT);
4659#endif /* MBEDTLS_HMAC_DRBG_MAX_INPUT */
4660
4661#if defined(MBEDTLS_HMAC_DRBG_MAX_REQUEST)
4662    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_HMAC_DRBG_MAX_REQUEST);
4663#endif /* MBEDTLS_HMAC_DRBG_MAX_REQUEST */
4664
4665#if defined(MBEDTLS_HMAC_DRBG_MAX_SEED_INPUT)
4666    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_HMAC_DRBG_MAX_SEED_INPUT);
4667#endif /* MBEDTLS_HMAC_DRBG_MAX_SEED_INPUT */
4668
4669#if defined(MBEDTLS_ECP_WINDOW_SIZE)
4670    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_WINDOW_SIZE);
4671#endif /* MBEDTLS_ECP_WINDOW_SIZE */
4672
4673#if defined(MBEDTLS_ECP_FIXED_POINT_OPTIM)
4674    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ECP_FIXED_POINT_OPTIM);
4675#endif /* MBEDTLS_ECP_FIXED_POINT_OPTIM */
4676
4677#if defined(MBEDTLS_ENTROPY_MAX_SOURCES)
4678    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ENTROPY_MAX_SOURCES);
4679#endif /* MBEDTLS_ENTROPY_MAX_SOURCES */
4680
4681#if defined(MBEDTLS_ENTROPY_MAX_GATHER)
4682    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ENTROPY_MAX_GATHER);
4683#endif /* MBEDTLS_ENTROPY_MAX_GATHER */
4684
4685#if defined(MBEDTLS_ENTROPY_MIN_HARDWARE)
4686    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_ENTROPY_MIN_HARDWARE);
4687#endif /* MBEDTLS_ENTROPY_MIN_HARDWARE */
4688
4689#if defined(MBEDTLS_MEMORY_ALIGN_MULTIPLE)
4690    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_MEMORY_ALIGN_MULTIPLE);
4691#endif /* MBEDTLS_MEMORY_ALIGN_MULTIPLE */
4692
4693#if defined(MBEDTLS_PLATFORM_STD_MEM_HDR)
4694    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_STD_MEM_HDR);
4695#endif /* MBEDTLS_PLATFORM_STD_MEM_HDR */
4696
4697#if defined(MBEDTLS_PLATFORM_STD_CALLOC)
4698    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_STD_CALLOC);
4699#endif /* MBEDTLS_PLATFORM_STD_CALLOC */
4700
4701#if defined(MBEDTLS_PLATFORM_STD_FREE)
4702    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_STD_FREE);
4703#endif /* MBEDTLS_PLATFORM_STD_FREE */
4704
4705#if defined(MBEDTLS_PLATFORM_STD_SETBUF)
4706    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_STD_SETBUF);
4707#endif /* MBEDTLS_PLATFORM_STD_SETBUF */
4708
4709#if defined(MBEDTLS_PLATFORM_STD_EXIT)
4710    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_STD_EXIT);
4711#endif /* MBEDTLS_PLATFORM_STD_EXIT */
4712
4713#if defined(MBEDTLS_PLATFORM_STD_TIME)
4714    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_STD_TIME);
4715#endif /* MBEDTLS_PLATFORM_STD_TIME */
4716
4717#if defined(MBEDTLS_PLATFORM_STD_FPRINTF)
4718    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_STD_FPRINTF);
4719#endif /* MBEDTLS_PLATFORM_STD_FPRINTF */
4720
4721#if defined(MBEDTLS_PLATFORM_STD_PRINTF)
4722    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_STD_PRINTF);
4723#endif /* MBEDTLS_PLATFORM_STD_PRINTF */
4724
4725#if defined(MBEDTLS_PLATFORM_STD_SNPRINTF)
4726    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_STD_SNPRINTF);
4727#endif /* MBEDTLS_PLATFORM_STD_SNPRINTF */
4728
4729#if defined(MBEDTLS_PLATFORM_STD_EXIT_SUCCESS)
4730    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_STD_EXIT_SUCCESS);
4731#endif /* MBEDTLS_PLATFORM_STD_EXIT_SUCCESS */
4732
4733#if defined(MBEDTLS_PLATFORM_STD_EXIT_FAILURE)
4734    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_STD_EXIT_FAILURE);
4735#endif /* MBEDTLS_PLATFORM_STD_EXIT_FAILURE */
4736
4737#if defined(MBEDTLS_PLATFORM_STD_NV_SEED_READ)
4738    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_STD_NV_SEED_READ);
4739#endif /* MBEDTLS_PLATFORM_STD_NV_SEED_READ */
4740
4741#if defined(MBEDTLS_PLATFORM_STD_NV_SEED_WRITE)
4742    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_STD_NV_SEED_WRITE);
4743#endif /* MBEDTLS_PLATFORM_STD_NV_SEED_WRITE */
4744
4745#if defined(MBEDTLS_PLATFORM_STD_NV_SEED_FILE)
4746    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_STD_NV_SEED_FILE);
4747#endif /* MBEDTLS_PLATFORM_STD_NV_SEED_FILE */
4748
4749#if defined(MBEDTLS_PLATFORM_CALLOC_MACRO)
4750    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_CALLOC_MACRO);
4751#endif /* MBEDTLS_PLATFORM_CALLOC_MACRO */
4752
4753#if defined(MBEDTLS_PLATFORM_FREE_MACRO)
4754    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_FREE_MACRO);
4755#endif /* MBEDTLS_PLATFORM_FREE_MACRO */
4756
4757#if defined(MBEDTLS_PLATFORM_EXIT_MACRO)
4758    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_EXIT_MACRO);
4759#endif /* MBEDTLS_PLATFORM_EXIT_MACRO */
4760
4761#if defined(MBEDTLS_PLATFORM_SETBUF_MACRO)
4762    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_SETBUF_MACRO);
4763#endif /* MBEDTLS_PLATFORM_SETBUF_MACRO */
4764
4765#if defined(MBEDTLS_PLATFORM_TIME_MACRO)
4766    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_TIME_MACRO);
4767#endif /* MBEDTLS_PLATFORM_TIME_MACRO */
4768
4769#if defined(MBEDTLS_PLATFORM_TIME_TYPE_MACRO)
4770    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_TIME_TYPE_MACRO);
4771#endif /* MBEDTLS_PLATFORM_TIME_TYPE_MACRO */
4772
4773#if defined(MBEDTLS_PLATFORM_FPRINTF_MACRO)
4774    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_FPRINTF_MACRO);
4775#endif /* MBEDTLS_PLATFORM_FPRINTF_MACRO */
4776
4777#if defined(MBEDTLS_PLATFORM_PRINTF_MACRO)
4778    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_PRINTF_MACRO);
4779#endif /* MBEDTLS_PLATFORM_PRINTF_MACRO */
4780
4781#if defined(MBEDTLS_PLATFORM_SNPRINTF_MACRO)
4782    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_SNPRINTF_MACRO);
4783#endif /* MBEDTLS_PLATFORM_SNPRINTF_MACRO */
4784
4785#if defined(MBEDTLS_PLATFORM_VSNPRINTF_MACRO)
4786    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_VSNPRINTF_MACRO);
4787#endif /* MBEDTLS_PLATFORM_VSNPRINTF_MACRO */
4788
4789#if defined(MBEDTLS_PLATFORM_NV_SEED_READ_MACRO)
4790    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_NV_SEED_READ_MACRO);
4791#endif /* MBEDTLS_PLATFORM_NV_SEED_READ_MACRO */
4792
4793#if defined(MBEDTLS_PLATFORM_NV_SEED_WRITE_MACRO)
4794    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_NV_SEED_WRITE_MACRO);
4795#endif /* MBEDTLS_PLATFORM_NV_SEED_WRITE_MACRO */
4796
4797#if defined(MBEDTLS_PLATFORM_MS_TIME_TYPE_MACRO)
4798    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PLATFORM_MS_TIME_TYPE_MACRO);
4799#endif /* MBEDTLS_PLATFORM_MS_TIME_TYPE_MACRO */
4800
4801#if defined(MBEDTLS_PRINTF_MS_TIME)
4802    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PRINTF_MS_TIME);
4803#endif /* MBEDTLS_PRINTF_MS_TIME */
4804
4805#if defined(MBEDTLS_CHECK_RETURN)
4806    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_CHECK_RETURN);
4807#endif /* MBEDTLS_CHECK_RETURN */
4808
4809#if defined(MBEDTLS_IGNORE_RETURN)
4810    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_IGNORE_RETURN);
4811#endif /* MBEDTLS_IGNORE_RETURN */
4812
4813#if defined(MBEDTLS_PSA_HMAC_DRBG_MD_TYPE)
4814    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PSA_HMAC_DRBG_MD_TYPE);
4815#endif /* MBEDTLS_PSA_HMAC_DRBG_MD_TYPE */
4816
4817#if defined(MBEDTLS_PSA_KEY_SLOT_COUNT)
4818    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PSA_KEY_SLOT_COUNT);
4819#endif /* MBEDTLS_PSA_KEY_SLOT_COUNT */
4820
4821#if defined(MBEDTLS_RSA_GEN_KEY_MIN_BITS)
4822    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_RSA_GEN_KEY_MIN_BITS);
4823#endif /* MBEDTLS_RSA_GEN_KEY_MIN_BITS */
4824
4825#if defined(MBEDTLS_SSL_CACHE_DEFAULT_TIMEOUT)
4826    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_CACHE_DEFAULT_TIMEOUT);
4827#endif /* MBEDTLS_SSL_CACHE_DEFAULT_TIMEOUT */
4828
4829#if defined(MBEDTLS_SSL_CACHE_DEFAULT_MAX_ENTRIES)
4830    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_CACHE_DEFAULT_MAX_ENTRIES);
4831#endif /* MBEDTLS_SSL_CACHE_DEFAULT_MAX_ENTRIES */
4832
4833#if defined(MBEDTLS_SSL_IN_CONTENT_LEN)
4834    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_IN_CONTENT_LEN);
4835#endif /* MBEDTLS_SSL_IN_CONTENT_LEN */
4836
4837#if defined(MBEDTLS_SSL_CID_IN_LEN_MAX)
4838    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_CID_IN_LEN_MAX);
4839#endif /* MBEDTLS_SSL_CID_IN_LEN_MAX */
4840
4841#if defined(MBEDTLS_SSL_CID_OUT_LEN_MAX)
4842    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_CID_OUT_LEN_MAX);
4843#endif /* MBEDTLS_SSL_CID_OUT_LEN_MAX */
4844
4845#if defined(MBEDTLS_SSL_CID_TLS1_3_PADDING_GRANULARITY)
4846    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_CID_TLS1_3_PADDING_GRANULARITY);
4847#endif /* MBEDTLS_SSL_CID_TLS1_3_PADDING_GRANULARITY */
4848
4849#if defined(MBEDTLS_SSL_OUT_CONTENT_LEN)
4850    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_OUT_CONTENT_LEN);
4851#endif /* MBEDTLS_SSL_OUT_CONTENT_LEN */
4852
4853#if defined(MBEDTLS_SSL_DTLS_MAX_BUFFERING)
4854    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_DTLS_MAX_BUFFERING);
4855#endif /* MBEDTLS_SSL_DTLS_MAX_BUFFERING */
4856
4857#if defined(MBEDTLS_PSK_MAX_LEN)
4858    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_PSK_MAX_LEN);
4859#endif /* MBEDTLS_PSK_MAX_LEN */
4860
4861#if defined(MBEDTLS_SSL_COOKIE_TIMEOUT)
4862    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_COOKIE_TIMEOUT);
4863#endif /* MBEDTLS_SSL_COOKIE_TIMEOUT */
4864
4865#if defined(MBEDTLS_SSL_MAX_EARLY_DATA_SIZE)
4866    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_MAX_EARLY_DATA_SIZE);
4867#endif /* MBEDTLS_SSL_MAX_EARLY_DATA_SIZE */
4868
4869#if defined(MBEDTLS_SSL_TLS1_3_TICKET_AGE_TOLERANCE)
4870    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_TLS1_3_TICKET_AGE_TOLERANCE);
4871#endif /* MBEDTLS_SSL_TLS1_3_TICKET_AGE_TOLERANCE */
4872
4873#if defined(MBEDTLS_SSL_TLS1_3_TICKET_NONCE_LENGTH)
4874    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_TLS1_3_TICKET_NONCE_LENGTH);
4875#endif /* MBEDTLS_SSL_TLS1_3_TICKET_NONCE_LENGTH */
4876
4877#if defined(MBEDTLS_SSL_TLS1_3_DEFAULT_NEW_SESSION_TICKETS)
4878    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_SSL_TLS1_3_DEFAULT_NEW_SESSION_TICKETS);
4879#endif /* MBEDTLS_SSL_TLS1_3_DEFAULT_NEW_SESSION_TICKETS */
4880
4881#if defined(MBEDTLS_X509_MAX_INTERMEDIATE_CA)
4882    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_X509_MAX_INTERMEDIATE_CA);
4883#endif /* MBEDTLS_X509_MAX_INTERMEDIATE_CA */
4884
4885#if defined(MBEDTLS_X509_MAX_FILE_PATH_LEN)
4886    OUTPUT_MACRO_NAME_VALUE(MBEDTLS_X509_MAX_FILE_PATH_LEN);
4887#endif /* MBEDTLS_X509_MAX_FILE_PATH_LEN */
4888
4889#if defined(PSA_WANT_ALG_CBC_MAC)
4890    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_CBC_MAC);
4891#endif /* PSA_WANT_ALG_CBC_MAC */
4892
4893#if defined(PSA_WANT_ALG_CBC_NO_PADDING)
4894    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_CBC_NO_PADDING);
4895#endif /* PSA_WANT_ALG_CBC_NO_PADDING */
4896
4897#if defined(PSA_WANT_ALG_CBC_PKCS7)
4898    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_CBC_PKCS7);
4899#endif /* PSA_WANT_ALG_CBC_PKCS7 */
4900
4901#if defined(PSA_WANT_ALG_CCM)
4902    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_CCM);
4903#endif /* PSA_WANT_ALG_CCM */
4904
4905#if defined(PSA_WANT_ALG_CCM_STAR_NO_TAG)
4906    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_CCM_STAR_NO_TAG);
4907#endif /* PSA_WANT_ALG_CCM_STAR_NO_TAG */
4908
4909#if defined(PSA_WANT_ALG_CMAC)
4910    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_CMAC);
4911#endif /* PSA_WANT_ALG_CMAC */
4912
4913#if defined(PSA_WANT_ALG_CFB)
4914    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_CFB);
4915#endif /* PSA_WANT_ALG_CFB */
4916
4917#if defined(PSA_WANT_ALG_CHACHA20_POLY1305)
4918    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_CHACHA20_POLY1305);
4919#endif /* PSA_WANT_ALG_CHACHA20_POLY1305 */
4920
4921#if defined(PSA_WANT_ALG_CTR)
4922    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_CTR);
4923#endif /* PSA_WANT_ALG_CTR */
4924
4925#if defined(PSA_WANT_ALG_DETERMINISTIC_ECDSA)
4926    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_DETERMINISTIC_ECDSA);
4927#endif /* PSA_WANT_ALG_DETERMINISTIC_ECDSA */
4928
4929#if defined(PSA_WANT_ALG_ECB_NO_PADDING)
4930    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_ECB_NO_PADDING);
4931#endif /* PSA_WANT_ALG_ECB_NO_PADDING */
4932
4933#if defined(PSA_WANT_ALG_ECDH)
4934    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_ECDH);
4935#endif /* PSA_WANT_ALG_ECDH */
4936
4937#if defined(PSA_WANT_ALG_FFDH)
4938    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_FFDH);
4939#endif /* PSA_WANT_ALG_FFDH */
4940
4941#if defined(PSA_WANT_ALG_ECDSA)
4942    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_ECDSA);
4943#endif /* PSA_WANT_ALG_ECDSA */
4944
4945#if defined(PSA_WANT_ALG_JPAKE)
4946    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_JPAKE);
4947#endif /* PSA_WANT_ALG_JPAKE */
4948
4949#if defined(PSA_WANT_ALG_GCM)
4950    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_GCM);
4951#endif /* PSA_WANT_ALG_GCM */
4952
4953#if defined(PSA_WANT_ALG_HKDF)
4954    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_HKDF);
4955#endif /* PSA_WANT_ALG_HKDF */
4956
4957#if defined(PSA_WANT_ALG_HKDF_EXTRACT)
4958    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_HKDF_EXTRACT);
4959#endif /* PSA_WANT_ALG_HKDF_EXTRACT */
4960
4961#if defined(PSA_WANT_ALG_HKDF_EXPAND)
4962    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_HKDF_EXPAND);
4963#endif /* PSA_WANT_ALG_HKDF_EXPAND */
4964
4965#if defined(PSA_WANT_ALG_HMAC)
4966    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_HMAC);
4967#endif /* PSA_WANT_ALG_HMAC */
4968
4969#if defined(PSA_WANT_ALG_MD5)
4970    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_MD5);
4971#endif /* PSA_WANT_ALG_MD5 */
4972
4973#if defined(PSA_WANT_ALG_OFB)
4974    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_OFB);
4975#endif /* PSA_WANT_ALG_OFB */
4976
4977#if defined(PSA_WANT_ALG_PBKDF2_HMAC)
4978    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_PBKDF2_HMAC);
4979#endif /* PSA_WANT_ALG_PBKDF2_HMAC */
4980
4981#if defined(PSA_WANT_ALG_PBKDF2_AES_CMAC_PRF_128)
4982    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_PBKDF2_AES_CMAC_PRF_128);
4983#endif /* PSA_WANT_ALG_PBKDF2_AES_CMAC_PRF_128 */
4984
4985#if defined(PSA_WANT_ALG_RIPEMD160)
4986    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_RIPEMD160);
4987#endif /* PSA_WANT_ALG_RIPEMD160 */
4988
4989#if defined(PSA_WANT_ALG_RSA_OAEP)
4990    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_RSA_OAEP);
4991#endif /* PSA_WANT_ALG_RSA_OAEP */
4992
4993#if defined(PSA_WANT_ALG_RSA_PKCS1V15_CRYPT)
4994    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_RSA_PKCS1V15_CRYPT);
4995#endif /* PSA_WANT_ALG_RSA_PKCS1V15_CRYPT */
4996
4997#if defined(PSA_WANT_ALG_RSA_PKCS1V15_SIGN)
4998    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_RSA_PKCS1V15_SIGN);
4999#endif /* PSA_WANT_ALG_RSA_PKCS1V15_SIGN */
5000
5001#if defined(PSA_WANT_ALG_RSA_PSS)
5002    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_RSA_PSS);
5003#endif /* PSA_WANT_ALG_RSA_PSS */
5004
5005#if defined(PSA_WANT_ALG_SHA_1)
5006    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_SHA_1);
5007#endif /* PSA_WANT_ALG_SHA_1 */
5008
5009#if defined(PSA_WANT_ALG_SHA_224)
5010    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_SHA_224);
5011#endif /* PSA_WANT_ALG_SHA_224 */
5012
5013#if defined(PSA_WANT_ALG_SHA_256)
5014    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_SHA_256);
5015#endif /* PSA_WANT_ALG_SHA_256 */
5016
5017#if defined(PSA_WANT_ALG_SHA_384)
5018    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_SHA_384);
5019#endif /* PSA_WANT_ALG_SHA_384 */
5020
5021#if defined(PSA_WANT_ALG_SHA_512)
5022    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_SHA_512);
5023#endif /* PSA_WANT_ALG_SHA_512 */
5024
5025#if defined(PSA_WANT_ALG_SHA3_224)
5026    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_SHA3_224);
5027#endif /* PSA_WANT_ALG_SHA3_224 */
5028
5029#if defined(PSA_WANT_ALG_SHA3_256)
5030    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_SHA3_256);
5031#endif /* PSA_WANT_ALG_SHA3_256 */
5032
5033#if defined(PSA_WANT_ALG_SHA3_384)
5034    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_SHA3_384);
5035#endif /* PSA_WANT_ALG_SHA3_384 */
5036
5037#if defined(PSA_WANT_ALG_SHA3_512)
5038    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_SHA3_512);
5039#endif /* PSA_WANT_ALG_SHA3_512 */
5040
5041#if defined(PSA_WANT_ALG_STREAM_CIPHER)
5042    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_STREAM_CIPHER);
5043#endif /* PSA_WANT_ALG_STREAM_CIPHER */
5044
5045#if defined(PSA_WANT_ALG_TLS12_PRF)
5046    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_TLS12_PRF);
5047#endif /* PSA_WANT_ALG_TLS12_PRF */
5048
5049#if defined(PSA_WANT_ALG_TLS12_PSK_TO_MS)
5050    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_TLS12_PSK_TO_MS);
5051#endif /* PSA_WANT_ALG_TLS12_PSK_TO_MS */
5052
5053#if defined(PSA_WANT_ALG_TLS12_ECJPAKE_TO_PMS)
5054    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_TLS12_ECJPAKE_TO_PMS);
5055#endif /* PSA_WANT_ALG_TLS12_ECJPAKE_TO_PMS */
5056
5057#if defined(PSA_WANT_ALG_XTS)
5058    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ALG_XTS);
5059#endif /* PSA_WANT_ALG_XTS */
5060
5061#if defined(PSA_WANT_ECC_BRAINPOOL_P_R1_256)
5062    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ECC_BRAINPOOL_P_R1_256);
5063#endif /* PSA_WANT_ECC_BRAINPOOL_P_R1_256 */
5064
5065#if defined(PSA_WANT_ECC_BRAINPOOL_P_R1_384)
5066    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ECC_BRAINPOOL_P_R1_384);
5067#endif /* PSA_WANT_ECC_BRAINPOOL_P_R1_384 */
5068
5069#if defined(PSA_WANT_ECC_BRAINPOOL_P_R1_512)
5070    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ECC_BRAINPOOL_P_R1_512);
5071#endif /* PSA_WANT_ECC_BRAINPOOL_P_R1_512 */
5072
5073#if defined(PSA_WANT_ECC_MONTGOMERY_255)
5074    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ECC_MONTGOMERY_255);
5075#endif /* PSA_WANT_ECC_MONTGOMERY_255 */
5076
5077#if defined(PSA_WANT_ECC_MONTGOMERY_448)
5078    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ECC_MONTGOMERY_448);
5079#endif /* PSA_WANT_ECC_MONTGOMERY_448 */
5080
5081#if defined(PSA_WANT_ECC_SECP_K1_192)
5082    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ECC_SECP_K1_192);
5083#endif /* PSA_WANT_ECC_SECP_K1_192 */
5084
5085#if defined(PSA_WANT_ECC_SECP_K1_224)
5086    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ECC_SECP_K1_224);
5087#endif /* PSA_WANT_ECC_SECP_K1_224 */
5088
5089#if defined(PSA_WANT_ECC_SECP_K1_256)
5090    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ECC_SECP_K1_256);
5091#endif /* PSA_WANT_ECC_SECP_K1_256 */
5092
5093#if defined(PSA_WANT_ECC_SECP_R1_192)
5094    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ECC_SECP_R1_192);
5095#endif /* PSA_WANT_ECC_SECP_R1_192 */
5096
5097#if defined(PSA_WANT_ECC_SECP_R1_224)
5098    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ECC_SECP_R1_224);
5099#endif /* PSA_WANT_ECC_SECP_R1_224 */
5100
5101#if defined(PSA_WANT_ECC_SECP_R1_256)
5102    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ECC_SECP_R1_256);
5103#endif /* PSA_WANT_ECC_SECP_R1_256 */
5104
5105#if defined(PSA_WANT_ECC_SECP_R1_384)
5106    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ECC_SECP_R1_384);
5107#endif /* PSA_WANT_ECC_SECP_R1_384 */
5108
5109#if defined(PSA_WANT_ECC_SECP_R1_521)
5110    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_ECC_SECP_R1_521);
5111#endif /* PSA_WANT_ECC_SECP_R1_521 */
5112
5113#if defined(PSA_WANT_DH_RFC7919_2048)
5114    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_DH_RFC7919_2048);
5115#endif /* PSA_WANT_DH_RFC7919_2048 */
5116
5117#if defined(PSA_WANT_DH_RFC7919_3072)
5118    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_DH_RFC7919_3072);
5119#endif /* PSA_WANT_DH_RFC7919_3072 */
5120
5121#if defined(PSA_WANT_DH_RFC7919_4096)
5122    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_DH_RFC7919_4096);
5123#endif /* PSA_WANT_DH_RFC7919_4096 */
5124
5125#if defined(PSA_WANT_DH_RFC7919_6144)
5126    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_DH_RFC7919_6144);
5127#endif /* PSA_WANT_DH_RFC7919_6144 */
5128
5129#if defined(PSA_WANT_DH_RFC7919_8192)
5130    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_DH_RFC7919_8192);
5131#endif /* PSA_WANT_DH_RFC7919_8192 */
5132
5133#if defined(PSA_WANT_KEY_TYPE_DERIVE)
5134    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_DERIVE);
5135#endif /* PSA_WANT_KEY_TYPE_DERIVE */
5136
5137#if defined(PSA_WANT_KEY_TYPE_PASSWORD)
5138    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_PASSWORD);
5139#endif /* PSA_WANT_KEY_TYPE_PASSWORD */
5140
5141#if defined(PSA_WANT_KEY_TYPE_PASSWORD_HASH)
5142    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_PASSWORD_HASH);
5143#endif /* PSA_WANT_KEY_TYPE_PASSWORD_HASH */
5144
5145#if defined(PSA_WANT_KEY_TYPE_HMAC)
5146    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_HMAC);
5147#endif /* PSA_WANT_KEY_TYPE_HMAC */
5148
5149#if defined(PSA_WANT_KEY_TYPE_AES)
5150    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_AES);
5151#endif /* PSA_WANT_KEY_TYPE_AES */
5152
5153#if defined(PSA_WANT_KEY_TYPE_ARIA)
5154    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_ARIA);
5155#endif /* PSA_WANT_KEY_TYPE_ARIA */
5156
5157#if defined(PSA_WANT_KEY_TYPE_CAMELLIA)
5158    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_CAMELLIA);
5159#endif /* PSA_WANT_KEY_TYPE_CAMELLIA */
5160
5161#if defined(PSA_WANT_KEY_TYPE_CHACHA20)
5162    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_CHACHA20);
5163#endif /* PSA_WANT_KEY_TYPE_CHACHA20 */
5164
5165#if defined(PSA_WANT_KEY_TYPE_DES)
5166    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_DES);
5167#endif /* PSA_WANT_KEY_TYPE_DES */
5168
5169#if defined(PSA_WANT_KEY_TYPE_ECC_KEY_PAIR)
5170    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_ECC_KEY_PAIR);
5171#endif /* PSA_WANT_KEY_TYPE_ECC_KEY_PAIR */
5172
5173#if defined(PSA_WANT_KEY_TYPE_ECC_PUBLIC_KEY)
5174    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_ECC_PUBLIC_KEY);
5175#endif /* PSA_WANT_KEY_TYPE_ECC_PUBLIC_KEY */
5176
5177#if defined(PSA_WANT_KEY_TYPE_DH_PUBLIC_KEY)
5178    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_DH_PUBLIC_KEY);
5179#endif /* PSA_WANT_KEY_TYPE_DH_PUBLIC_KEY */
5180
5181#if defined(PSA_WANT_KEY_TYPE_RAW_DATA)
5182    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_RAW_DATA);
5183#endif /* PSA_WANT_KEY_TYPE_RAW_DATA */
5184
5185#if defined(PSA_WANT_KEY_TYPE_RSA_KEY_PAIR)
5186    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_RSA_KEY_PAIR);
5187#endif /* PSA_WANT_KEY_TYPE_RSA_KEY_PAIR */
5188
5189#if defined(PSA_WANT_KEY_TYPE_RSA_PUBLIC_KEY)
5190    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_RSA_PUBLIC_KEY);
5191#endif /* PSA_WANT_KEY_TYPE_RSA_PUBLIC_KEY */
5192
5193#if defined(PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_BASIC)
5194    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_BASIC);
5195#endif /* PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_BASIC */
5196
5197#if defined(PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_IMPORT)
5198    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_IMPORT);
5199#endif /* PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_IMPORT */
5200
5201#if defined(PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_EXPORT)
5202    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_EXPORT);
5203#endif /* PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_EXPORT */
5204
5205#if defined(PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_GENERATE)
5206    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_GENERATE);
5207#endif /* PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_GENERATE */
5208
5209#if defined(PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_DERIVE)
5210    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_DERIVE);
5211#endif /* PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_DERIVE */
5212
5213#if defined(PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_BASIC)
5214    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_BASIC);
5215#endif /* PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_BASIC */
5216
5217#if defined(PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_IMPORT)
5218    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_IMPORT);
5219#endif /* PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_IMPORT */
5220
5221#if defined(PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_EXPORT)
5222    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_EXPORT);
5223#endif /* PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_EXPORT */
5224
5225#if defined(PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_GENERATE)
5226    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_GENERATE);
5227#endif /* PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_GENERATE */
5228
5229#if defined(PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_DERIVE)
5230    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_DERIVE);
5231#endif /* PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_DERIVE */
5232
5233#if defined(PSA_WANT_KEY_TYPE_DH_KEY_PAIR_BASIC)
5234    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_DH_KEY_PAIR_BASIC);
5235#endif /* PSA_WANT_KEY_TYPE_DH_KEY_PAIR_BASIC */
5236
5237#if defined(PSA_WANT_KEY_TYPE_DH_KEY_PAIR_IMPORT)
5238    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_DH_KEY_PAIR_IMPORT);
5239#endif /* PSA_WANT_KEY_TYPE_DH_KEY_PAIR_IMPORT */
5240
5241#if defined(PSA_WANT_KEY_TYPE_DH_KEY_PAIR_EXPORT)
5242    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_DH_KEY_PAIR_EXPORT);
5243#endif /* PSA_WANT_KEY_TYPE_DH_KEY_PAIR_EXPORT */
5244
5245#if defined(PSA_WANT_KEY_TYPE_DH_KEY_PAIR_GENERATE)
5246    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_DH_KEY_PAIR_GENERATE);
5247#endif /* PSA_WANT_KEY_TYPE_DH_KEY_PAIR_GENERATE */
5248
5249#if defined(PSA_WANT_KEY_TYPE_DH_KEY_PAIR_DERIVE)
5250    OUTPUT_MACRO_NAME_VALUE(PSA_WANT_KEY_TYPE_DH_KEY_PAIR_DERIVE);
5251#endif /* PSA_WANT_KEY_TYPE_DH_KEY_PAIR_DERIVE */
5252
5253
5254}
5255#if defined(_MSC_VER)
5256#pragma warning(pop)
5257#endif /* _MSC_VER */
5258