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