ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
Loading...
Searching...
No Matches
mbedtls_config.h
Go to the documentation of this file.
1
57
58#pragma once
59
60/* Tell Mbed TLS which config-file format we are using. The vendored
61 * tree is 4.1.0 / 4.x; bump this when we move to 5.x. */
63#define MBEDTLS_CONFIG_VERSION (0x04000000)
64
65/* =============================================================================
66 * Error / debug / version
67 * =============================================================================
68 */
70#define MBEDTLS_ERROR_C
72#define MBEDTLS_ERROR_STRERROR_DUMMY
74#define MBEDTLS_VERSION_C
76#define MBEDTLS_VERSION_FEATURES
77
78/* =============================================================================
79 * Key-exchange modes selected for the TLS handshake
80 * =============================================================================
81 *
82 * These select which cipher-suites the SSL layer will offer / accept.
83 * The underlying primitives (AES-GCM, SHA-256, ECDHE math) are
84 * configured in tf_psa_crypto_config.h.
85 */
87#define MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED
89#define MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED
90
91/* =============================================================================
92 * SSL / TLS layer
93 * =============================================================================
94 */
96#define MBEDTLS_SSL_TLS_C
98#define MBEDTLS_SSL_CLI_C
100#define MBEDTLS_SSL_PROTO_TLS1_2
102#define MBEDTLS_SSL_PROTO_TLS1_3
104#define MBEDTLS_SSL_TLS1_3_KEY_EXCHANGE_MODE_EPHEMERAL_ENABLED
106#define MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE
108#define MBEDTLS_SSL_KEEP_PEER_CERTIFICATE
110#define MBEDTLS_SSL_SESSION_TICKETS
112#define MBEDTLS_SSL_SERVER_NAME_INDICATION
114#define MBEDTLS_SSL_ALL_ALERT_MESSAGES
116#define MBEDTLS_SSL_ALPN
118#define MBEDTLS_SSL_ENCRYPT_THEN_MAC
120#define MBEDTLS_SSL_EXTENDED_MASTER_SECRET
122#define MBEDTLS_SSL_RENEGOTIATION
124#define MBEDTLS_SSL_MAX_CONTENT_LEN (16384)
125
126/* =============================================================================
127 * X.509 chain validation (client cert parse only -- we don't write certs)
128 * =============================================================================
129 */
131#define MBEDTLS_X509_USE_C
133#define MBEDTLS_X509_CRT_PARSE_C
135#define MBEDTLS_X509_CRL_PARSE_C
137#define MBEDTLS_X509_RSASSA_PSS_SUPPORT
139#define MBEDTLS_X509_CHECK_KEY_USAGE
141#define MBEDTLS_X509_CHECK_EXTENDED_KEY_USAGE
142
143/* =============================================================================
144 * Timing -- we provide our own (TIMING_ALT) since there is no POSIX clock.
145 * =============================================================================
146 *
147 * The project does not yet wire ra8_time into Mbed TLS, so for now
148 * leave both MBEDTLS_TIMING_C and MBEDTLS_TIMING_ALT undefined --
149 * the SSL layer falls back to a generation-counter heuristic where
150 * timing isn't strictly required for client-side handshakes.
151 */
152
153/* =============================================================================
154 * Things we explicitly do NOT enable
155 * =============================================================================
156 *
157 * - MBEDTLS_NET_C -- BSD socket adapter (we use NetX directly).
158 * - MBEDTLS_TIMING_C -- POSIX timing helpers.
159 * - MBEDTLS_HAVE_TIME / _DATE -- system time (no fs-backed RTC yet).
160 * - MBEDTLS_DEBUG_C -- chatty debug output (the example app
161 * may re-enable it locally if needed).
162 * - MBEDTLS_SSL_SRV_C -- server side; client-only build.
163 * - MBEDTLS_SSL_PROTO_DTLS -- we only do TCP TLS.
164 * - MBEDTLS_FS_IO -- no filesystem in this firmware.
165 */