mirror of
https://github.com/Mbed-TLS/mbedtls.git
synced 2026-11-09 23:00:03 +08:00
Merge 4895d13a55de93d72bf3bd0a31190ecc8f27eec4 into 4fdb917aae2fb5876e04f88621630712a906a067
This commit is contained in:
commit
fafc785104
@ -54,8 +54,6 @@
|
|||||||
|
|
||||||
#include "mbedtls/platform.h"
|
#include "mbedtls/platform.h"
|
||||||
|
|
||||||
static int supported_init = 0;
|
|
||||||
|
|
||||||
static inline const mbedtls_cipher_base_t *mbedtls_cipher_get_base(
|
static inline const mbedtls_cipher_base_t *mbedtls_cipher_get_base(
|
||||||
const mbedtls_cipher_info_t *info)
|
const mbedtls_cipher_info_t *info)
|
||||||
{
|
{
|
||||||
@ -64,22 +62,6 @@ static inline const mbedtls_cipher_base_t *mbedtls_cipher_get_base(
|
|||||||
|
|
||||||
const int *mbedtls_cipher_list(void)
|
const int *mbedtls_cipher_list(void)
|
||||||
{
|
{
|
||||||
const mbedtls_cipher_definition_t *def;
|
|
||||||
int *type;
|
|
||||||
|
|
||||||
if (!supported_init) {
|
|
||||||
def = mbedtls_cipher_definitions;
|
|
||||||
type = mbedtls_cipher_supported;
|
|
||||||
|
|
||||||
while (def->type != 0) {
|
|
||||||
*type++ = (*def++).type;
|
|
||||||
}
|
|
||||||
|
|
||||||
*type = 0;
|
|
||||||
|
|
||||||
supported_init = 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
return mbedtls_cipher_supported;
|
return mbedtls_cipher_supported;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -2423,7 +2423,177 @@ const mbedtls_cipher_definition_t mbedtls_cipher_definitions[] =
|
|||||||
|
|
||||||
#define NUM_CIPHERS (sizeof(mbedtls_cipher_definitions) / \
|
#define NUM_CIPHERS (sizeof(mbedtls_cipher_definitions) / \
|
||||||
sizeof(mbedtls_cipher_definitions[0]))
|
sizeof(mbedtls_cipher_definitions[0]))
|
||||||
int mbedtls_cipher_supported[NUM_CIPHERS];
|
const int mbedtls_cipher_supported[NUM_CIPHERS] =
|
||||||
|
{
|
||||||
|
#if defined(MBEDTLS_AES_C)
|
||||||
|
MBEDTLS_CIPHER_AES_128_ECB,
|
||||||
|
#if !defined(MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH)
|
||||||
|
MBEDTLS_CIPHER_AES_192_ECB,
|
||||||
|
MBEDTLS_CIPHER_AES_256_ECB,
|
||||||
|
#endif
|
||||||
|
#if defined(MBEDTLS_CIPHER_MODE_CBC)
|
||||||
|
MBEDTLS_CIPHER_AES_128_CBC,
|
||||||
|
#if !defined(MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH)
|
||||||
|
MBEDTLS_CIPHER_AES_192_CBC,
|
||||||
|
MBEDTLS_CIPHER_AES_256_CBC,
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
#if defined(MBEDTLS_CIPHER_MODE_CFB)
|
||||||
|
MBEDTLS_CIPHER_AES_128_CFB128,
|
||||||
|
#if !defined(MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH)
|
||||||
|
MBEDTLS_CIPHER_AES_192_CFB128,
|
||||||
|
MBEDTLS_CIPHER_AES_256_CFB128,
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
#if defined(MBEDTLS_CIPHER_MODE_OFB)
|
||||||
|
MBEDTLS_CIPHER_AES_128_OFB,
|
||||||
|
#if !defined(MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH)
|
||||||
|
MBEDTLS_CIPHER_AES_192_OFB,
|
||||||
|
MBEDTLS_CIPHER_AES_256_OFB,
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
#if defined(MBEDTLS_CIPHER_MODE_CTR)
|
||||||
|
MBEDTLS_CIPHER_AES_128_CTR,
|
||||||
|
#if !defined(MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH)
|
||||||
|
MBEDTLS_CIPHER_AES_192_CTR,
|
||||||
|
MBEDTLS_CIPHER_AES_256_CTR,
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
#if defined(MBEDTLS_CIPHER_MODE_XTS)
|
||||||
|
MBEDTLS_CIPHER_AES_128_XTS,
|
||||||
|
#if !defined(MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH)
|
||||||
|
MBEDTLS_CIPHER_AES_256_XTS,
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
#endif /* MBEDTLS_AES_C */
|
||||||
|
#if defined(MBEDTLS_CIPHER_HAVE_GCM_AES_VIA_LEGACY_OR_USE_PSA)
|
||||||
|
MBEDTLS_CIPHER_AES_128_GCM,
|
||||||
|
#if !defined(MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH)
|
||||||
|
MBEDTLS_CIPHER_AES_192_GCM,
|
||||||
|
MBEDTLS_CIPHER_AES_256_GCM,
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
#if defined(MBEDTLS_CIPHER_HAVE_CCM_AES_VIA_LEGACY_OR_USE_PSA)
|
||||||
|
MBEDTLS_CIPHER_AES_128_CCM,
|
||||||
|
#if !defined(MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH)
|
||||||
|
MBEDTLS_CIPHER_AES_192_CCM,
|
||||||
|
MBEDTLS_CIPHER_AES_256_CCM,
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
#if defined(MBEDTLS_CIPHER_HAVE_CCM_STAR_NO_TAG_AES_VIA_LEGACY_OR_USE_PSA)
|
||||||
|
MBEDTLS_CIPHER_AES_128_CCM_STAR_NO_TAG,
|
||||||
|
#if !defined(MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH)
|
||||||
|
MBEDTLS_CIPHER_AES_192_CCM_STAR_NO_TAG,
|
||||||
|
MBEDTLS_CIPHER_AES_256_CCM_STAR_NO_TAG,
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(MBEDTLS_CAMELLIA_C)
|
||||||
|
MBEDTLS_CIPHER_CAMELLIA_128_ECB,
|
||||||
|
MBEDTLS_CIPHER_CAMELLIA_192_ECB,
|
||||||
|
MBEDTLS_CIPHER_CAMELLIA_256_ECB,
|
||||||
|
#if defined(MBEDTLS_CIPHER_MODE_CBC)
|
||||||
|
MBEDTLS_CIPHER_CAMELLIA_128_CBC,
|
||||||
|
MBEDTLS_CIPHER_CAMELLIA_192_CBC,
|
||||||
|
MBEDTLS_CIPHER_CAMELLIA_256_CBC,
|
||||||
|
#endif
|
||||||
|
#if defined(MBEDTLS_CIPHER_MODE_CFB)
|
||||||
|
MBEDTLS_CIPHER_CAMELLIA_128_CFB128,
|
||||||
|
MBEDTLS_CIPHER_CAMELLIA_192_CFB128,
|
||||||
|
MBEDTLS_CIPHER_CAMELLIA_256_CFB128,
|
||||||
|
#endif
|
||||||
|
#if defined(MBEDTLS_CIPHER_MODE_CTR)
|
||||||
|
MBEDTLS_CIPHER_CAMELLIA_128_CTR,
|
||||||
|
MBEDTLS_CIPHER_CAMELLIA_192_CTR,
|
||||||
|
MBEDTLS_CIPHER_CAMELLIA_256_CTR,
|
||||||
|
#endif
|
||||||
|
#if defined(MBEDTLS_GCM_C)
|
||||||
|
MBEDTLS_CIPHER_CAMELLIA_128_GCM,
|
||||||
|
MBEDTLS_CIPHER_CAMELLIA_192_GCM,
|
||||||
|
MBEDTLS_CIPHER_CAMELLIA_256_GCM,
|
||||||
|
#endif
|
||||||
|
#if defined(MBEDTLS_CCM_C)
|
||||||
|
MBEDTLS_CIPHER_CAMELLIA_128_CCM,
|
||||||
|
MBEDTLS_CIPHER_CAMELLIA_192_CCM,
|
||||||
|
MBEDTLS_CIPHER_CAMELLIA_256_CCM,
|
||||||
|
MBEDTLS_CIPHER_CAMELLIA_128_CCM_STAR_NO_TAG,
|
||||||
|
MBEDTLS_CIPHER_CAMELLIA_192_CCM_STAR_NO_TAG,
|
||||||
|
MBEDTLS_CIPHER_CAMELLIA_256_CCM_STAR_NO_TAG,
|
||||||
|
#endif
|
||||||
|
#endif /* MBEDTLS_CAMELLIA_C */
|
||||||
|
|
||||||
|
#if defined(MBEDTLS_ARIA_C)
|
||||||
|
MBEDTLS_CIPHER_ARIA_128_ECB,
|
||||||
|
MBEDTLS_CIPHER_ARIA_192_ECB,
|
||||||
|
MBEDTLS_CIPHER_ARIA_256_ECB,
|
||||||
|
#if defined(MBEDTLS_CIPHER_MODE_CBC)
|
||||||
|
MBEDTLS_CIPHER_ARIA_128_CBC,
|
||||||
|
MBEDTLS_CIPHER_ARIA_192_CBC,
|
||||||
|
MBEDTLS_CIPHER_ARIA_256_CBC,
|
||||||
|
#endif
|
||||||
|
#if defined(MBEDTLS_CIPHER_MODE_CFB)
|
||||||
|
MBEDTLS_CIPHER_ARIA_128_CFB128,
|
||||||
|
MBEDTLS_CIPHER_ARIA_192_CFB128,
|
||||||
|
MBEDTLS_CIPHER_ARIA_256_CFB128,
|
||||||
|
#endif
|
||||||
|
#if defined(MBEDTLS_CIPHER_MODE_CTR)
|
||||||
|
MBEDTLS_CIPHER_ARIA_128_CTR,
|
||||||
|
MBEDTLS_CIPHER_ARIA_192_CTR,
|
||||||
|
MBEDTLS_CIPHER_ARIA_256_CTR,
|
||||||
|
#endif
|
||||||
|
#if defined(MBEDTLS_GCM_C)
|
||||||
|
MBEDTLS_CIPHER_ARIA_128_GCM,
|
||||||
|
MBEDTLS_CIPHER_ARIA_192_GCM,
|
||||||
|
MBEDTLS_CIPHER_ARIA_256_GCM,
|
||||||
|
#endif
|
||||||
|
#if defined(MBEDTLS_CCM_C)
|
||||||
|
MBEDTLS_CIPHER_ARIA_128_CCM,
|
||||||
|
MBEDTLS_CIPHER_ARIA_192_CCM,
|
||||||
|
MBEDTLS_CIPHER_ARIA_256_CCM,
|
||||||
|
MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG,
|
||||||
|
MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG,
|
||||||
|
MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG,
|
||||||
|
#endif
|
||||||
|
#endif /* MBEDTLS_ARIA_C */
|
||||||
|
|
||||||
|
#if defined(MBEDTLS_DES_C)
|
||||||
|
MBEDTLS_CIPHER_DES_ECB,
|
||||||
|
MBEDTLS_CIPHER_DES_EDE_ECB,
|
||||||
|
MBEDTLS_CIPHER_DES_EDE3_ECB,
|
||||||
|
#if defined(MBEDTLS_CIPHER_MODE_CBC)
|
||||||
|
MBEDTLS_CIPHER_DES_CBC,
|
||||||
|
MBEDTLS_CIPHER_DES_EDE_CBC,
|
||||||
|
MBEDTLS_CIPHER_DES_EDE3_CBC,
|
||||||
|
#endif
|
||||||
|
#endif /* MBEDTLS_DES_C */
|
||||||
|
|
||||||
|
#if defined(MBEDTLS_CHACHA20_C)
|
||||||
|
MBEDTLS_CIPHER_CHACHA20,
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(MBEDTLS_CHACHAPOLY_C)
|
||||||
|
MBEDTLS_CIPHER_CHACHA20_POLY1305,
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(MBEDTLS_NIST_KW_C)
|
||||||
|
MBEDTLS_CIPHER_AES_128_KW,
|
||||||
|
#if !defined(MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH)
|
||||||
|
MBEDTLS_CIPHER_AES_192_KW,
|
||||||
|
MBEDTLS_CIPHER_AES_256_KW,
|
||||||
|
#endif
|
||||||
|
MBEDTLS_CIPHER_AES_128_KWP,
|
||||||
|
#if !defined(MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH)
|
||||||
|
MBEDTLS_CIPHER_AES_192_KWP,
|
||||||
|
MBEDTLS_CIPHER_AES_256_KWP,
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(MBEDTLS_CIPHER_NULL_CIPHER)
|
||||||
|
MBEDTLS_CIPHER_NULL,
|
||||||
|
#endif /* MBEDTLS_CIPHER_NULL_CIPHER */
|
||||||
|
|
||||||
|
MBEDTLS_CIPHER_NONE
|
||||||
|
};
|
||||||
|
|
||||||
const mbedtls_cipher_base_t * const mbedtls_cipher_base_lookup_table[] = {
|
const mbedtls_cipher_base_t * const mbedtls_cipher_base_lookup_table[] = {
|
||||||
#if defined(MBEDTLS_AES_C)
|
#if defined(MBEDTLS_AES_C)
|
||||||
|
|||||||
@ -167,7 +167,7 @@ typedef struct {
|
|||||||
|
|
||||||
extern const mbedtls_cipher_definition_t mbedtls_cipher_definitions[];
|
extern const mbedtls_cipher_definition_t mbedtls_cipher_definitions[];
|
||||||
|
|
||||||
extern int mbedtls_cipher_supported[];
|
extern const int mbedtls_cipher_supported[];
|
||||||
|
|
||||||
extern const mbedtls_cipher_base_t * const mbedtls_cipher_base_lookup_table[];
|
extern const mbedtls_cipher_base_t * const mbedtls_cipher_base_lookup_table[];
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user