#ifndef SL_MBEDTLS_CONFIG_H
#define SL_MBEDTLS_CONFIG_H
// -----------------------------------------------------------------------------
// User exposed config options
// <<< Use Configuration Wizard in Context Menu >>>
// TLS/DTLS configuration
// Complete list of ciphersuites to use, in order of preference.
// Default: MBEDTLS_TLS_ECJPAKE_WITH_AES_128_CCM_8
// Complete list of ciphersuites to use, in order of preference.
// The value of this configuration should be updated for the application needs.
#define MBEDTLS_SSL_CIPHERSUITES MBEDTLS_TLS_ECJPAKE_WITH_AES_128_CCM_8
// Maximum TLS/DTLS fragment length in bytes (input).
// Default: 768
// The size configured here determines the size of the internal I/O
// buffer used in mbedTLS when receiving data.
#define SL_MBEDTLS_SSL_IN_CONTENT_LEN 768
// Maximum TLS/DTLS fragment length in bytes (output).
// Default: 768
// The size configured here determines the size of the internal I/O
// buffer used in mbedTLS when sending data.
#define SL_MBEDTLS_SSL_OUT_CONTENT_LEN 768
// Enable support for RFC 6066 max_fragment_length extension in SSL.
// Default: 1
// Enable support for RFC 6066 max_fragment_length extension in SSL.
#define SL_MBEDTLS_SSL_MAX_FRAGMENT_LENGTH 1
// Enable support for exporting key block and master secret.
// Default: 1
// Enable support for exporting key block and master secret.
// This is required for certain users of TLS, e.g. EAP-TLS.
#define SL_MBEDTLS_SSL_EXPORT_KEYS 1
// Enable the PSK based ciphersuite modes in SSL / TLS.
// Default: 0
// Enable the PSK based ciphersuite modes in SSL / TLS.
#define SL_MBEDTLS_KEY_EXCHANGE_PSK_ENABLED 1
// Enable the ECDHE-PSK based ciphersuite modes in SSL / TLS.
// Default: 0
// Enable the ECDHE-PSK based ciphersuite modes in SSL / TLS.
#define SL_MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED 0
// Enable the ECDHE-ECDSA based ciphersuite modes in SSL / TLS.
// Default: 0
// Enable the ECDHE-ECDSA based ciphersuite modes in SSL / TLS.
#define SL_MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED 0
// Enable the ECDHE-RSA based ciphersuite modes in SSL / TLS.
// Default: 0
// Enable the ECDHE-RSA based ciphersuite modes in SSL / TLS.
#define SL_MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED 0
// Enable the ECDH-ECDSA based ciphersuite modes in SSL / TLS.
// Default: 0
// Enable the ECDH-ECDSA based ciphersuite modes in SSL / TLS.
#define SL_MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA_ENABLED 0
// Enable parsing of the compressed curves.
// Default: 0
// Enable parsing of the compressed curves.
#define SL_MBEDTLS_ECP_ENABLE_COMPRESSED_CURVE_PARSING 0
// Assume all buffers passed to PSA functions are owned exclusively by the PSA function.
// Default: 0
// This option may be enabled if all buffers passed to any PSA function reside
// in memory that is accessible only to the PSA function during its execution.
// This option MUST be disabled whenever buffer arguments are in memory shared
// with an untrusted party, for example where arguments to PSA calls are passed
// across a trust boundary.
#define SL_MBEDTLS_PSA_ASSUME_EXCLUSIVE_BUFFERS 1
//
// RSA configuration
// Disable use of the Chinese Remainder Theorem for RSA.
// Default: 0
// Disable use of the Chinese Remainder Theorem for RSA private key
// computations.
#define SL_MBEDTLS_RSA_NO_CRT 0
//
// Miscellaneous configuration
// Enable Silicon Labs' Mbed TLS- and PSA Crypto drivers.
// Default: 1
// Enable drivers for hardware acceleration (Mbed TLS and PSA Crypto) and
// secure key handling (PSA Crypto).
#define SL_MBEDTLS_DRIVERS_ENABLED 1
//
// <<< end of configuration section >>>
// -----------------------------------------------------------------------------
// Sub-files
#if defined(SLI_MBEDTLS_CONFIG_AUTOGEN_OVERRIDE_FILE)
#include SLI_MBEDTLS_CONFIG_AUTOGEN_OVERRIDE_FILE
#else
#include "sli_mbedtls_config_autogen.h"
#endif
#include "sli_mbedtls_omnipresent.h"
#if SL_MBEDTLS_DRIVERS_ENABLED
#include "sli_mbedtls_acceleration.h"
#endif
#include "sl_mbedtls_device_config.h"
// Include transformation logic to apply CMSIS-config configuration options to
// the correct Mbed TLS / PSA Crypto options.
#include "sli_mbedtls_config_transform_autogen.h"
// Included for backward compatibility reasons.
#include "mbedtls/build_info.h"
#endif // SL_MBEDTLS_CONFIG_H