| /** |
| * \file mbedtls/config_psa.h |
| * \brief PSA crypto configuration options (set of defines) |
| * |
| * This set of compile-time options takes settings defined in |
| * include/mbedtls/mbedtls_config.h and include/psa/crypto_config.h and uses |
| * those definitions to define symbols used in the library code. |
| * |
| * Users and integrators should not edit this file, please edit |
| * include/mbedtls/mbedtls_config.h for MBEDTLS_XXX settings or |
| * include/psa/crypto_config.h for PSA_WANT_XXX settings. |
| */ |
| /* |
| * Copyright The Mbed TLS Contributors |
| * SPDX-License-Identifier: Apache-2.0 |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); you may |
| * not use this file except in compliance with the License. |
| * You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT |
| * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| #ifndef MBEDTLS_CONFIG_PSA_H |
| #define MBEDTLS_CONFIG_PSA_H |
| |
| #include "psa/crypto_legacy.h" |
| |
| #include "psa/crypto_adjust_config_synonyms.h" |
| |
| #include "mbedtls/config_adjust_psa_superset_legacy.h" |
| |
| #if defined(MBEDTLS_PSA_CRYPTO_CONFIG) |
| |
| /* Require built-in implementations based on PSA requirements */ |
| |
| #include "mbedtls/config_adjust_legacy_from_psa.h" |
| |
| #else /* MBEDTLS_PSA_CRYPTO_CONFIG */ |
| |
| /* Infer PSA requirements from Mbed TLS capabilities */ |
| |
| #include "mbedtls/config_adjust_psa_from_legacy.h" |
| |
| #endif /* MBEDTLS_PSA_CRYPTO_CONFIG */ |
| |
| #if defined(PSA_WANT_ALG_JPAKE) |
| #define PSA_WANT_ALG_SOME_PAKE 1 |
| #endif |
| |
| /* Even though KEY_PAIR symbols' feature several level of support (BASIC, IMPORT, |
| * EXPORT, GENERATE, DERIVE) we're not planning to have support only for BASIC |
| * without IMPORT/EXPORT since these last 2 features are strongly used in tests. |
| * In general it is allowed to include more feature than what is strictly |
| * requested. |
| * As a consequence IMPORT and EXPORT features will be automatically enabled |
| * as soon as the BASIC one is. */ |
| #if defined(PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_BASIC) |
| #define PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_IMPORT 1 |
| #define PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_EXPORT 1 |
| #endif |
| |
| /* See description above */ |
| #if defined(MBEDTLS_PSA_BUILTIN_KEY_TYPE_ECC_KEY_PAIR_BASIC) |
| #define MBEDTLS_PSA_BUILTIN_KEY_TYPE_ECC_KEY_PAIR_IMPORT 1 |
| #define MBEDTLS_PSA_BUILTIN_KEY_TYPE_ECC_KEY_PAIR_EXPORT 1 |
| #endif |
| |
| /* See description above */ |
| #if defined(PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_BASIC) |
| #define PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_IMPORT 1 |
| #define PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_EXPORT 1 |
| #endif |
| |
| /* See description above */ |
| #if defined(MBEDTLS_PSA_BUILTIN_KEY_TYPE_RSA_KEY_PAIR_BASIC) |
| #define MBEDTLS_PSA_BUILTIN_KEY_TYPE_RSA_KEY_PAIR_IMPORT 1 |
| #define MBEDTLS_PSA_BUILTIN_KEY_TYPE_RSA_KEY_PAIR_EXPORT 1 |
| #endif |
| |
| /* See description above */ |
| #if defined(PSA_WANT_KEY_TYPE_DH_KEY_PAIR_BASIC) |
| #define PSA_WANT_KEY_TYPE_DH_KEY_PAIR_IMPORT 1 |
| #define PSA_WANT_KEY_TYPE_DH_KEY_PAIR_EXPORT 1 |
| #endif |
| |
| /* See description above */ |
| #if defined(MBEDTLS_PSA_BUILTIN_KEY_TYPE_DH_KEY_PAIR_BASIC) |
| #define MBEDTLS_PSA_BUILTIN_KEY_TYPE_DH_KEY_PAIR_IMPORT 1 |
| #define MBEDTLS_PSA_BUILTIN_KEY_TYPE_DH_KEY_PAIR_EXPORT 1 |
| #endif |
| |
| #include "psa/crypto_adjust_auto_enabled.h" |
| |
| #endif /* MBEDTLS_CONFIG_PSA_H */ |