Rtos API example

Committer:
marcozecchini
Date:
Sat Feb 23 12:13:36 2019 +0000
Revision:
0:9fca2b23d0ba
final commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
marcozecchini 0:9fca2b23d0ba 1 /**
marcozecchini 0:9fca2b23d0ba 2 * \file ssl_ciphersuites.c
marcozecchini 0:9fca2b23d0ba 3 *
marcozecchini 0:9fca2b23d0ba 4 * \brief SSL ciphersuites for mbed TLS
marcozecchini 0:9fca2b23d0ba 5 *
marcozecchini 0:9fca2b23d0ba 6 * Copyright (C) 2006-2015, ARM Limited, All Rights Reserved
marcozecchini 0:9fca2b23d0ba 7 * SPDX-License-Identifier: Apache-2.0
marcozecchini 0:9fca2b23d0ba 8 *
marcozecchini 0:9fca2b23d0ba 9 * Licensed under the Apache License, Version 2.0 (the "License"); you may
marcozecchini 0:9fca2b23d0ba 10 * not use this file except in compliance with the License.
marcozecchini 0:9fca2b23d0ba 11 * You may obtain a copy of the License at
marcozecchini 0:9fca2b23d0ba 12 *
marcozecchini 0:9fca2b23d0ba 13 * http://www.apache.org/licenses/LICENSE-2.0
marcozecchini 0:9fca2b23d0ba 14 *
marcozecchini 0:9fca2b23d0ba 15 * Unless required by applicable law or agreed to in writing, software
marcozecchini 0:9fca2b23d0ba 16 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
marcozecchini 0:9fca2b23d0ba 17 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
marcozecchini 0:9fca2b23d0ba 18 * See the License for the specific language governing permissions and
marcozecchini 0:9fca2b23d0ba 19 * limitations under the License.
marcozecchini 0:9fca2b23d0ba 20 *
marcozecchini 0:9fca2b23d0ba 21 * This file is part of mbed TLS (https://tls.mbed.org)
marcozecchini 0:9fca2b23d0ba 22 */
marcozecchini 0:9fca2b23d0ba 23
marcozecchini 0:9fca2b23d0ba 24 #if !defined(MBEDTLS_CONFIG_FILE)
marcozecchini 0:9fca2b23d0ba 25 #include "mbedtls/config.h"
marcozecchini 0:9fca2b23d0ba 26 #else
marcozecchini 0:9fca2b23d0ba 27 #include MBEDTLS_CONFIG_FILE
marcozecchini 0:9fca2b23d0ba 28 #endif
marcozecchini 0:9fca2b23d0ba 29
marcozecchini 0:9fca2b23d0ba 30 #if defined(MBEDTLS_SSL_TLS_C)
marcozecchini 0:9fca2b23d0ba 31
marcozecchini 0:9fca2b23d0ba 32 #if defined(MBEDTLS_PLATFORM_C)
marcozecchini 0:9fca2b23d0ba 33 #include "mbedtls/platform.h"
marcozecchini 0:9fca2b23d0ba 34 #else
marcozecchini 0:9fca2b23d0ba 35 #include <stdlib.h>
marcozecchini 0:9fca2b23d0ba 36 #endif
marcozecchini 0:9fca2b23d0ba 37
marcozecchini 0:9fca2b23d0ba 38 #include "mbedtls/ssl_ciphersuites.h"
marcozecchini 0:9fca2b23d0ba 39 #include "mbedtls/ssl.h"
marcozecchini 0:9fca2b23d0ba 40
marcozecchini 0:9fca2b23d0ba 41 #include <string.h>
marcozecchini 0:9fca2b23d0ba 42
marcozecchini 0:9fca2b23d0ba 43 /*
marcozecchini 0:9fca2b23d0ba 44 * Ordered from most preferred to least preferred in terms of security.
marcozecchini 0:9fca2b23d0ba 45 *
marcozecchini 0:9fca2b23d0ba 46 * Current rule (except rc4, weak and null which come last):
marcozecchini 0:9fca2b23d0ba 47 * 1. By key exchange:
marcozecchini 0:9fca2b23d0ba 48 * Forward-secure non-PSK > forward-secure PSK > ECJPAKE > other non-PSK > other PSK
marcozecchini 0:9fca2b23d0ba 49 * 2. By key length and cipher:
marcozecchini 0:9fca2b23d0ba 50 * AES-256 > Camellia-256 > AES-128 > Camellia-128 > 3DES
marcozecchini 0:9fca2b23d0ba 51 * 3. By cipher mode when relevant GCM > CCM > CBC > CCM_8
marcozecchini 0:9fca2b23d0ba 52 * 4. By hash function used when relevant
marcozecchini 0:9fca2b23d0ba 53 * 5. By key exchange/auth again: EC > non-EC
marcozecchini 0:9fca2b23d0ba 54 */
marcozecchini 0:9fca2b23d0ba 55 static const int ciphersuite_preference[] =
marcozecchini 0:9fca2b23d0ba 56 {
marcozecchini 0:9fca2b23d0ba 57 #if defined(MBEDTLS_SSL_CIPHERSUITES)
marcozecchini 0:9fca2b23d0ba 58 MBEDTLS_SSL_CIPHERSUITES,
marcozecchini 0:9fca2b23d0ba 59 #else
marcozecchini 0:9fca2b23d0ba 60 /* All AES-256 ephemeral suites */
marcozecchini 0:9fca2b23d0ba 61 MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,
marcozecchini 0:9fca2b23d0ba 62 MBEDTLS_TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,
marcozecchini 0:9fca2b23d0ba 63 MBEDTLS_TLS_DHE_RSA_WITH_AES_256_GCM_SHA384,
marcozecchini 0:9fca2b23d0ba 64 MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_256_CCM,
marcozecchini 0:9fca2b23d0ba 65 MBEDTLS_TLS_DHE_RSA_WITH_AES_256_CCM,
marcozecchini 0:9fca2b23d0ba 66 MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,
marcozecchini 0:9fca2b23d0ba 67 MBEDTLS_TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,
marcozecchini 0:9fca2b23d0ba 68 MBEDTLS_TLS_DHE_RSA_WITH_AES_256_CBC_SHA256,
marcozecchini 0:9fca2b23d0ba 69 MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 70 MBEDTLS_TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 71 MBEDTLS_TLS_DHE_RSA_WITH_AES_256_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 72 MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_256_CCM_8,
marcozecchini 0:9fca2b23d0ba 73 MBEDTLS_TLS_DHE_RSA_WITH_AES_256_CCM_8,
marcozecchini 0:9fca2b23d0ba 74
marcozecchini 0:9fca2b23d0ba 75 /* All CAMELLIA-256 ephemeral suites */
marcozecchini 0:9fca2b23d0ba 76 MBEDTLS_TLS_ECDHE_ECDSA_WITH_CAMELLIA_256_GCM_SHA384,
marcozecchini 0:9fca2b23d0ba 77 MBEDTLS_TLS_ECDHE_RSA_WITH_CAMELLIA_256_GCM_SHA384,
marcozecchini 0:9fca2b23d0ba 78 MBEDTLS_TLS_DHE_RSA_WITH_CAMELLIA_256_GCM_SHA384,
marcozecchini 0:9fca2b23d0ba 79 MBEDTLS_TLS_ECDHE_ECDSA_WITH_CAMELLIA_256_CBC_SHA384,
marcozecchini 0:9fca2b23d0ba 80 MBEDTLS_TLS_ECDHE_RSA_WITH_CAMELLIA_256_CBC_SHA384,
marcozecchini 0:9fca2b23d0ba 81 MBEDTLS_TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA256,
marcozecchini 0:9fca2b23d0ba 82 MBEDTLS_TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 83
marcozecchini 0:9fca2b23d0ba 84 /* All AES-128 ephemeral suites */
marcozecchini 0:9fca2b23d0ba 85 MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,
marcozecchini 0:9fca2b23d0ba 86 MBEDTLS_TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,
marcozecchini 0:9fca2b23d0ba 87 MBEDTLS_TLS_DHE_RSA_WITH_AES_128_GCM_SHA256,
marcozecchini 0:9fca2b23d0ba 88 MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_128_CCM,
marcozecchini 0:9fca2b23d0ba 89 MBEDTLS_TLS_DHE_RSA_WITH_AES_128_CCM,
marcozecchini 0:9fca2b23d0ba 90 MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,
marcozecchini 0:9fca2b23d0ba 91 MBEDTLS_TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,
marcozecchini 0:9fca2b23d0ba 92 MBEDTLS_TLS_DHE_RSA_WITH_AES_128_CBC_SHA256,
marcozecchini 0:9fca2b23d0ba 93 MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 94 MBEDTLS_TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 95 MBEDTLS_TLS_DHE_RSA_WITH_AES_128_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 96 MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_128_CCM_8,
marcozecchini 0:9fca2b23d0ba 97 MBEDTLS_TLS_DHE_RSA_WITH_AES_128_CCM_8,
marcozecchini 0:9fca2b23d0ba 98
marcozecchini 0:9fca2b23d0ba 99 /* All CAMELLIA-128 ephemeral suites */
marcozecchini 0:9fca2b23d0ba 100 MBEDTLS_TLS_ECDHE_ECDSA_WITH_CAMELLIA_128_GCM_SHA256,
marcozecchini 0:9fca2b23d0ba 101 MBEDTLS_TLS_ECDHE_RSA_WITH_CAMELLIA_128_GCM_SHA256,
marcozecchini 0:9fca2b23d0ba 102 MBEDTLS_TLS_DHE_RSA_WITH_CAMELLIA_128_GCM_SHA256,
marcozecchini 0:9fca2b23d0ba 103 MBEDTLS_TLS_ECDHE_ECDSA_WITH_CAMELLIA_128_CBC_SHA256,
marcozecchini 0:9fca2b23d0ba 104 MBEDTLS_TLS_ECDHE_RSA_WITH_CAMELLIA_128_CBC_SHA256,
marcozecchini 0:9fca2b23d0ba 105 MBEDTLS_TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA256,
marcozecchini 0:9fca2b23d0ba 106 MBEDTLS_TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 107
marcozecchini 0:9fca2b23d0ba 108 /* All remaining >= 128-bit ephemeral suites */
marcozecchini 0:9fca2b23d0ba 109 MBEDTLS_TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 110 MBEDTLS_TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 111 MBEDTLS_TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 112
marcozecchini 0:9fca2b23d0ba 113 /* The PSK ephemeral suites */
marcozecchini 0:9fca2b23d0ba 114 MBEDTLS_TLS_DHE_PSK_WITH_AES_256_GCM_SHA384,
marcozecchini 0:9fca2b23d0ba 115 MBEDTLS_TLS_DHE_PSK_WITH_AES_256_CCM,
marcozecchini 0:9fca2b23d0ba 116 MBEDTLS_TLS_ECDHE_PSK_WITH_AES_256_CBC_SHA384,
marcozecchini 0:9fca2b23d0ba 117 MBEDTLS_TLS_DHE_PSK_WITH_AES_256_CBC_SHA384,
marcozecchini 0:9fca2b23d0ba 118 MBEDTLS_TLS_ECDHE_PSK_WITH_AES_256_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 119 MBEDTLS_TLS_DHE_PSK_WITH_AES_256_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 120 MBEDTLS_TLS_DHE_PSK_WITH_CAMELLIA_256_GCM_SHA384,
marcozecchini 0:9fca2b23d0ba 121 MBEDTLS_TLS_ECDHE_PSK_WITH_CAMELLIA_256_CBC_SHA384,
marcozecchini 0:9fca2b23d0ba 122 MBEDTLS_TLS_DHE_PSK_WITH_CAMELLIA_256_CBC_SHA384,
marcozecchini 0:9fca2b23d0ba 123 MBEDTLS_TLS_DHE_PSK_WITH_AES_256_CCM_8,
marcozecchini 0:9fca2b23d0ba 124
marcozecchini 0:9fca2b23d0ba 125 MBEDTLS_TLS_DHE_PSK_WITH_AES_128_GCM_SHA256,
marcozecchini 0:9fca2b23d0ba 126 MBEDTLS_TLS_DHE_PSK_WITH_AES_128_CCM,
marcozecchini 0:9fca2b23d0ba 127 MBEDTLS_TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA256,
marcozecchini 0:9fca2b23d0ba 128 MBEDTLS_TLS_DHE_PSK_WITH_AES_128_CBC_SHA256,
marcozecchini 0:9fca2b23d0ba 129 MBEDTLS_TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 130 MBEDTLS_TLS_DHE_PSK_WITH_AES_128_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 131 MBEDTLS_TLS_DHE_PSK_WITH_CAMELLIA_128_GCM_SHA256,
marcozecchini 0:9fca2b23d0ba 132 MBEDTLS_TLS_DHE_PSK_WITH_CAMELLIA_128_CBC_SHA256,
marcozecchini 0:9fca2b23d0ba 133 MBEDTLS_TLS_ECDHE_PSK_WITH_CAMELLIA_128_CBC_SHA256,
marcozecchini 0:9fca2b23d0ba 134 MBEDTLS_TLS_DHE_PSK_WITH_AES_128_CCM_8,
marcozecchini 0:9fca2b23d0ba 135
marcozecchini 0:9fca2b23d0ba 136 MBEDTLS_TLS_ECDHE_PSK_WITH_3DES_EDE_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 137 MBEDTLS_TLS_DHE_PSK_WITH_3DES_EDE_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 138
marcozecchini 0:9fca2b23d0ba 139 /* The ECJPAKE suite */
marcozecchini 0:9fca2b23d0ba 140 MBEDTLS_TLS_ECJPAKE_WITH_AES_128_CCM_8,
marcozecchini 0:9fca2b23d0ba 141
marcozecchini 0:9fca2b23d0ba 142 /* All AES-256 suites */
marcozecchini 0:9fca2b23d0ba 143 MBEDTLS_TLS_RSA_WITH_AES_256_GCM_SHA384,
marcozecchini 0:9fca2b23d0ba 144 MBEDTLS_TLS_RSA_WITH_AES_256_CCM,
marcozecchini 0:9fca2b23d0ba 145 MBEDTLS_TLS_RSA_WITH_AES_256_CBC_SHA256,
marcozecchini 0:9fca2b23d0ba 146 MBEDTLS_TLS_RSA_WITH_AES_256_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 147 MBEDTLS_TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384,
marcozecchini 0:9fca2b23d0ba 148 MBEDTLS_TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384,
marcozecchini 0:9fca2b23d0ba 149 MBEDTLS_TLS_ECDH_RSA_WITH_AES_256_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 150 MBEDTLS_TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384,
marcozecchini 0:9fca2b23d0ba 151 MBEDTLS_TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384,
marcozecchini 0:9fca2b23d0ba 152 MBEDTLS_TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 153 MBEDTLS_TLS_RSA_WITH_AES_256_CCM_8,
marcozecchini 0:9fca2b23d0ba 154
marcozecchini 0:9fca2b23d0ba 155 /* All CAMELLIA-256 suites */
marcozecchini 0:9fca2b23d0ba 156 MBEDTLS_TLS_RSA_WITH_CAMELLIA_256_GCM_SHA384,
marcozecchini 0:9fca2b23d0ba 157 MBEDTLS_TLS_RSA_WITH_CAMELLIA_256_CBC_SHA256,
marcozecchini 0:9fca2b23d0ba 158 MBEDTLS_TLS_RSA_WITH_CAMELLIA_256_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 159 MBEDTLS_TLS_ECDH_RSA_WITH_CAMELLIA_256_GCM_SHA384,
marcozecchini 0:9fca2b23d0ba 160 MBEDTLS_TLS_ECDH_RSA_WITH_CAMELLIA_256_CBC_SHA384,
marcozecchini 0:9fca2b23d0ba 161 MBEDTLS_TLS_ECDH_ECDSA_WITH_CAMELLIA_256_GCM_SHA384,
marcozecchini 0:9fca2b23d0ba 162 MBEDTLS_TLS_ECDH_ECDSA_WITH_CAMELLIA_256_CBC_SHA384,
marcozecchini 0:9fca2b23d0ba 163
marcozecchini 0:9fca2b23d0ba 164 /* All AES-128 suites */
marcozecchini 0:9fca2b23d0ba 165 MBEDTLS_TLS_RSA_WITH_AES_128_GCM_SHA256,
marcozecchini 0:9fca2b23d0ba 166 MBEDTLS_TLS_RSA_WITH_AES_128_CCM,
marcozecchini 0:9fca2b23d0ba 167 MBEDTLS_TLS_RSA_WITH_AES_128_CBC_SHA256,
marcozecchini 0:9fca2b23d0ba 168 MBEDTLS_TLS_RSA_WITH_AES_128_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 169 MBEDTLS_TLS_ECDH_RSA_WITH_AES_128_GCM_SHA256,
marcozecchini 0:9fca2b23d0ba 170 MBEDTLS_TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256,
marcozecchini 0:9fca2b23d0ba 171 MBEDTLS_TLS_ECDH_RSA_WITH_AES_128_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 172 MBEDTLS_TLS_ECDH_ECDSA_WITH_AES_128_GCM_SHA256,
marcozecchini 0:9fca2b23d0ba 173 MBEDTLS_TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256,
marcozecchini 0:9fca2b23d0ba 174 MBEDTLS_TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 175 MBEDTLS_TLS_RSA_WITH_AES_128_CCM_8,
marcozecchini 0:9fca2b23d0ba 176
marcozecchini 0:9fca2b23d0ba 177 /* All CAMELLIA-128 suites */
marcozecchini 0:9fca2b23d0ba 178 MBEDTLS_TLS_RSA_WITH_CAMELLIA_128_GCM_SHA256,
marcozecchini 0:9fca2b23d0ba 179 MBEDTLS_TLS_RSA_WITH_CAMELLIA_128_CBC_SHA256,
marcozecchini 0:9fca2b23d0ba 180 MBEDTLS_TLS_RSA_WITH_CAMELLIA_128_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 181 MBEDTLS_TLS_ECDH_RSA_WITH_CAMELLIA_128_GCM_SHA256,
marcozecchini 0:9fca2b23d0ba 182 MBEDTLS_TLS_ECDH_RSA_WITH_CAMELLIA_128_CBC_SHA256,
marcozecchini 0:9fca2b23d0ba 183 MBEDTLS_TLS_ECDH_ECDSA_WITH_CAMELLIA_128_GCM_SHA256,
marcozecchini 0:9fca2b23d0ba 184 MBEDTLS_TLS_ECDH_ECDSA_WITH_CAMELLIA_128_CBC_SHA256,
marcozecchini 0:9fca2b23d0ba 185
marcozecchini 0:9fca2b23d0ba 186 /* All remaining >= 128-bit suites */
marcozecchini 0:9fca2b23d0ba 187 MBEDTLS_TLS_RSA_WITH_3DES_EDE_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 188 MBEDTLS_TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 189 MBEDTLS_TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 190
marcozecchini 0:9fca2b23d0ba 191 /* The RSA PSK suites */
marcozecchini 0:9fca2b23d0ba 192 MBEDTLS_TLS_RSA_PSK_WITH_AES_256_GCM_SHA384,
marcozecchini 0:9fca2b23d0ba 193 MBEDTLS_TLS_RSA_PSK_WITH_AES_256_CBC_SHA384,
marcozecchini 0:9fca2b23d0ba 194 MBEDTLS_TLS_RSA_PSK_WITH_AES_256_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 195 MBEDTLS_TLS_RSA_PSK_WITH_CAMELLIA_256_GCM_SHA384,
marcozecchini 0:9fca2b23d0ba 196 MBEDTLS_TLS_RSA_PSK_WITH_CAMELLIA_256_CBC_SHA384,
marcozecchini 0:9fca2b23d0ba 197
marcozecchini 0:9fca2b23d0ba 198 MBEDTLS_TLS_RSA_PSK_WITH_AES_128_GCM_SHA256,
marcozecchini 0:9fca2b23d0ba 199 MBEDTLS_TLS_RSA_PSK_WITH_AES_128_CBC_SHA256,
marcozecchini 0:9fca2b23d0ba 200 MBEDTLS_TLS_RSA_PSK_WITH_AES_128_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 201 MBEDTLS_TLS_RSA_PSK_WITH_CAMELLIA_128_GCM_SHA256,
marcozecchini 0:9fca2b23d0ba 202 MBEDTLS_TLS_RSA_PSK_WITH_CAMELLIA_128_CBC_SHA256,
marcozecchini 0:9fca2b23d0ba 203
marcozecchini 0:9fca2b23d0ba 204 MBEDTLS_TLS_RSA_PSK_WITH_3DES_EDE_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 205
marcozecchini 0:9fca2b23d0ba 206 /* The PSK suites */
marcozecchini 0:9fca2b23d0ba 207 MBEDTLS_TLS_PSK_WITH_AES_256_GCM_SHA384,
marcozecchini 0:9fca2b23d0ba 208 MBEDTLS_TLS_PSK_WITH_AES_256_CCM,
marcozecchini 0:9fca2b23d0ba 209 MBEDTLS_TLS_PSK_WITH_AES_256_CBC_SHA384,
marcozecchini 0:9fca2b23d0ba 210 MBEDTLS_TLS_PSK_WITH_AES_256_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 211 MBEDTLS_TLS_PSK_WITH_CAMELLIA_256_GCM_SHA384,
marcozecchini 0:9fca2b23d0ba 212 MBEDTLS_TLS_PSK_WITH_CAMELLIA_256_CBC_SHA384,
marcozecchini 0:9fca2b23d0ba 213 MBEDTLS_TLS_PSK_WITH_AES_256_CCM_8,
marcozecchini 0:9fca2b23d0ba 214
marcozecchini 0:9fca2b23d0ba 215 MBEDTLS_TLS_PSK_WITH_AES_128_GCM_SHA256,
marcozecchini 0:9fca2b23d0ba 216 MBEDTLS_TLS_PSK_WITH_AES_128_CCM,
marcozecchini 0:9fca2b23d0ba 217 MBEDTLS_TLS_PSK_WITH_AES_128_CBC_SHA256,
marcozecchini 0:9fca2b23d0ba 218 MBEDTLS_TLS_PSK_WITH_AES_128_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 219 MBEDTLS_TLS_PSK_WITH_CAMELLIA_128_GCM_SHA256,
marcozecchini 0:9fca2b23d0ba 220 MBEDTLS_TLS_PSK_WITH_CAMELLIA_128_CBC_SHA256,
marcozecchini 0:9fca2b23d0ba 221 MBEDTLS_TLS_PSK_WITH_AES_128_CCM_8,
marcozecchini 0:9fca2b23d0ba 222
marcozecchini 0:9fca2b23d0ba 223 MBEDTLS_TLS_PSK_WITH_3DES_EDE_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 224
marcozecchini 0:9fca2b23d0ba 225 /* RC4 suites */
marcozecchini 0:9fca2b23d0ba 226 MBEDTLS_TLS_ECDHE_ECDSA_WITH_RC4_128_SHA,
marcozecchini 0:9fca2b23d0ba 227 MBEDTLS_TLS_ECDHE_RSA_WITH_RC4_128_SHA,
marcozecchini 0:9fca2b23d0ba 228 MBEDTLS_TLS_ECDHE_PSK_WITH_RC4_128_SHA,
marcozecchini 0:9fca2b23d0ba 229 MBEDTLS_TLS_DHE_PSK_WITH_RC4_128_SHA,
marcozecchini 0:9fca2b23d0ba 230 MBEDTLS_TLS_RSA_WITH_RC4_128_SHA,
marcozecchini 0:9fca2b23d0ba 231 MBEDTLS_TLS_RSA_WITH_RC4_128_MD5,
marcozecchini 0:9fca2b23d0ba 232 MBEDTLS_TLS_ECDH_RSA_WITH_RC4_128_SHA,
marcozecchini 0:9fca2b23d0ba 233 MBEDTLS_TLS_ECDH_ECDSA_WITH_RC4_128_SHA,
marcozecchini 0:9fca2b23d0ba 234 MBEDTLS_TLS_RSA_PSK_WITH_RC4_128_SHA,
marcozecchini 0:9fca2b23d0ba 235 MBEDTLS_TLS_PSK_WITH_RC4_128_SHA,
marcozecchini 0:9fca2b23d0ba 236
marcozecchini 0:9fca2b23d0ba 237 /* Weak suites */
marcozecchini 0:9fca2b23d0ba 238 MBEDTLS_TLS_DHE_RSA_WITH_DES_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 239 MBEDTLS_TLS_RSA_WITH_DES_CBC_SHA,
marcozecchini 0:9fca2b23d0ba 240
marcozecchini 0:9fca2b23d0ba 241 /* NULL suites */
marcozecchini 0:9fca2b23d0ba 242 MBEDTLS_TLS_ECDHE_ECDSA_WITH_NULL_SHA,
marcozecchini 0:9fca2b23d0ba 243 MBEDTLS_TLS_ECDHE_RSA_WITH_NULL_SHA,
marcozecchini 0:9fca2b23d0ba 244 MBEDTLS_TLS_ECDHE_PSK_WITH_NULL_SHA384,
marcozecchini 0:9fca2b23d0ba 245 MBEDTLS_TLS_ECDHE_PSK_WITH_NULL_SHA256,
marcozecchini 0:9fca2b23d0ba 246 MBEDTLS_TLS_ECDHE_PSK_WITH_NULL_SHA,
marcozecchini 0:9fca2b23d0ba 247 MBEDTLS_TLS_DHE_PSK_WITH_NULL_SHA384,
marcozecchini 0:9fca2b23d0ba 248 MBEDTLS_TLS_DHE_PSK_WITH_NULL_SHA256,
marcozecchini 0:9fca2b23d0ba 249 MBEDTLS_TLS_DHE_PSK_WITH_NULL_SHA,
marcozecchini 0:9fca2b23d0ba 250
marcozecchini 0:9fca2b23d0ba 251 MBEDTLS_TLS_RSA_WITH_NULL_SHA256,
marcozecchini 0:9fca2b23d0ba 252 MBEDTLS_TLS_RSA_WITH_NULL_SHA,
marcozecchini 0:9fca2b23d0ba 253 MBEDTLS_TLS_RSA_WITH_NULL_MD5,
marcozecchini 0:9fca2b23d0ba 254 MBEDTLS_TLS_ECDH_RSA_WITH_NULL_SHA,
marcozecchini 0:9fca2b23d0ba 255 MBEDTLS_TLS_ECDH_ECDSA_WITH_NULL_SHA,
marcozecchini 0:9fca2b23d0ba 256 MBEDTLS_TLS_RSA_PSK_WITH_NULL_SHA384,
marcozecchini 0:9fca2b23d0ba 257 MBEDTLS_TLS_RSA_PSK_WITH_NULL_SHA256,
marcozecchini 0:9fca2b23d0ba 258 MBEDTLS_TLS_RSA_PSK_WITH_NULL_SHA,
marcozecchini 0:9fca2b23d0ba 259 MBEDTLS_TLS_PSK_WITH_NULL_SHA384,
marcozecchini 0:9fca2b23d0ba 260 MBEDTLS_TLS_PSK_WITH_NULL_SHA256,
marcozecchini 0:9fca2b23d0ba 261 MBEDTLS_TLS_PSK_WITH_NULL_SHA,
marcozecchini 0:9fca2b23d0ba 262
marcozecchini 0:9fca2b23d0ba 263 #endif /* MBEDTLS_SSL_CIPHERSUITES */
marcozecchini 0:9fca2b23d0ba 264 0
marcozecchini 0:9fca2b23d0ba 265 };
marcozecchini 0:9fca2b23d0ba 266
marcozecchini 0:9fca2b23d0ba 267 static const mbedtls_ssl_ciphersuite_t ciphersuite_definitions[] =
marcozecchini 0:9fca2b23d0ba 268 {
marcozecchini 0:9fca2b23d0ba 269 #if defined(MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED)
marcozecchini 0:9fca2b23d0ba 270 #if defined(MBEDTLS_AES_C)
marcozecchini 0:9fca2b23d0ba 271 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 272 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 273 { MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, "TLS-ECDHE-ECDSA-WITH-AES-128-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 274 MBEDTLS_CIPHER_AES_128_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA,
marcozecchini 0:9fca2b23d0ba 275 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 276 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 277 0 },
marcozecchini 0:9fca2b23d0ba 278 { MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, "TLS-ECDHE-ECDSA-WITH-AES-256-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 279 MBEDTLS_CIPHER_AES_256_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA,
marcozecchini 0:9fca2b23d0ba 280 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 281 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 282 0 },
marcozecchini 0:9fca2b23d0ba 283 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 284 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 285 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 286 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 287 { MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256, "TLS-ECDHE-ECDSA-WITH-AES-128-CBC-SHA256",
marcozecchini 0:9fca2b23d0ba 288 MBEDTLS_CIPHER_AES_128_CBC, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA,
marcozecchini 0:9fca2b23d0ba 289 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 290 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 291 0 },
marcozecchini 0:9fca2b23d0ba 292 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 293 #if defined(MBEDTLS_GCM_C)
marcozecchini 0:9fca2b23d0ba 294 { MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, "TLS-ECDHE-ECDSA-WITH-AES-128-GCM-SHA256",
marcozecchini 0:9fca2b23d0ba 295 MBEDTLS_CIPHER_AES_128_GCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA,
marcozecchini 0:9fca2b23d0ba 296 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 297 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 298 0 },
marcozecchini 0:9fca2b23d0ba 299 #endif /* MBEDTLS_GCM_C */
marcozecchini 0:9fca2b23d0ba 300 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 301 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 302 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 303 { MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384, "TLS-ECDHE-ECDSA-WITH-AES-256-CBC-SHA384",
marcozecchini 0:9fca2b23d0ba 304 MBEDTLS_CIPHER_AES_256_CBC, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA,
marcozecchini 0:9fca2b23d0ba 305 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 306 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 307 0 },
marcozecchini 0:9fca2b23d0ba 308 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 309 #if defined(MBEDTLS_GCM_C)
marcozecchini 0:9fca2b23d0ba 310 { MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, "TLS-ECDHE-ECDSA-WITH-AES-256-GCM-SHA384",
marcozecchini 0:9fca2b23d0ba 311 MBEDTLS_CIPHER_AES_256_GCM, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA,
marcozecchini 0:9fca2b23d0ba 312 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 313 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 314 0 },
marcozecchini 0:9fca2b23d0ba 315 #endif /* MBEDTLS_GCM_C */
marcozecchini 0:9fca2b23d0ba 316 #endif /* MBEDTLS_SHA512_C */
marcozecchini 0:9fca2b23d0ba 317 #if defined(MBEDTLS_CCM_C)
marcozecchini 0:9fca2b23d0ba 318 { MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_256_CCM, "TLS-ECDHE-ECDSA-WITH-AES-256-CCM",
marcozecchini 0:9fca2b23d0ba 319 MBEDTLS_CIPHER_AES_256_CCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA,
marcozecchini 0:9fca2b23d0ba 320 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 321 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 322 0 },
marcozecchini 0:9fca2b23d0ba 323 { MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_256_CCM_8, "TLS-ECDHE-ECDSA-WITH-AES-256-CCM-8",
marcozecchini 0:9fca2b23d0ba 324 MBEDTLS_CIPHER_AES_256_CCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA,
marcozecchini 0:9fca2b23d0ba 325 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 326 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 327 MBEDTLS_CIPHERSUITE_SHORT_TAG },
marcozecchini 0:9fca2b23d0ba 328 { MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_128_CCM, "TLS-ECDHE-ECDSA-WITH-AES-128-CCM",
marcozecchini 0:9fca2b23d0ba 329 MBEDTLS_CIPHER_AES_128_CCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA,
marcozecchini 0:9fca2b23d0ba 330 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 331 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 332 0 },
marcozecchini 0:9fca2b23d0ba 333 { MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_128_CCM_8, "TLS-ECDHE-ECDSA-WITH-AES-128-CCM-8",
marcozecchini 0:9fca2b23d0ba 334 MBEDTLS_CIPHER_AES_128_CCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA,
marcozecchini 0:9fca2b23d0ba 335 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 336 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 337 MBEDTLS_CIPHERSUITE_SHORT_TAG },
marcozecchini 0:9fca2b23d0ba 338 #endif /* MBEDTLS_CCM_C */
marcozecchini 0:9fca2b23d0ba 339 #endif /* MBEDTLS_AES_C */
marcozecchini 0:9fca2b23d0ba 340
marcozecchini 0:9fca2b23d0ba 341 #if defined(MBEDTLS_CAMELLIA_C)
marcozecchini 0:9fca2b23d0ba 342 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 343 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 344 { MBEDTLS_TLS_ECDHE_ECDSA_WITH_CAMELLIA_128_CBC_SHA256, "TLS-ECDHE-ECDSA-WITH-CAMELLIA-128-CBC-SHA256",
marcozecchini 0:9fca2b23d0ba 345 MBEDTLS_CIPHER_CAMELLIA_128_CBC, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA,
marcozecchini 0:9fca2b23d0ba 346 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 347 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 348 0 },
marcozecchini 0:9fca2b23d0ba 349 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 350 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 351 { MBEDTLS_TLS_ECDHE_ECDSA_WITH_CAMELLIA_256_CBC_SHA384, "TLS-ECDHE-ECDSA-WITH-CAMELLIA-256-CBC-SHA384",
marcozecchini 0:9fca2b23d0ba 352 MBEDTLS_CIPHER_CAMELLIA_256_CBC, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA,
marcozecchini 0:9fca2b23d0ba 353 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 354 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 355 0 },
marcozecchini 0:9fca2b23d0ba 356 #endif /* MBEDTLS_SHA512_C */
marcozecchini 0:9fca2b23d0ba 357 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 358
marcozecchini 0:9fca2b23d0ba 359 #if defined(MBEDTLS_GCM_C)
marcozecchini 0:9fca2b23d0ba 360 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 361 { MBEDTLS_TLS_ECDHE_ECDSA_WITH_CAMELLIA_128_GCM_SHA256, "TLS-ECDHE-ECDSA-WITH-CAMELLIA-128-GCM-SHA256",
marcozecchini 0:9fca2b23d0ba 362 MBEDTLS_CIPHER_CAMELLIA_128_GCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA,
marcozecchini 0:9fca2b23d0ba 363 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 364 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 365 0 },
marcozecchini 0:9fca2b23d0ba 366 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 367 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 368 { MBEDTLS_TLS_ECDHE_ECDSA_WITH_CAMELLIA_256_GCM_SHA384, "TLS-ECDHE-ECDSA-WITH-CAMELLIA-256-GCM-SHA384",
marcozecchini 0:9fca2b23d0ba 369 MBEDTLS_CIPHER_CAMELLIA_256_GCM, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA,
marcozecchini 0:9fca2b23d0ba 370 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 371 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 372 0 },
marcozecchini 0:9fca2b23d0ba 373 #endif /* MBEDTLS_SHA512_C */
marcozecchini 0:9fca2b23d0ba 374 #endif /* MBEDTLS_GCM_C */
marcozecchini 0:9fca2b23d0ba 375 #endif /* MBEDTLS_CAMELLIA_C */
marcozecchini 0:9fca2b23d0ba 376
marcozecchini 0:9fca2b23d0ba 377 #if defined(MBEDTLS_DES_C)
marcozecchini 0:9fca2b23d0ba 378 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 379 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 380 { MBEDTLS_TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA, "TLS-ECDHE-ECDSA-WITH-3DES-EDE-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 381 MBEDTLS_CIPHER_DES_EDE3_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA,
marcozecchini 0:9fca2b23d0ba 382 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 383 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 384 0 },
marcozecchini 0:9fca2b23d0ba 385 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 386 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 387 #endif /* MBEDTLS_DES_C */
marcozecchini 0:9fca2b23d0ba 388
marcozecchini 0:9fca2b23d0ba 389 #if defined(MBEDTLS_ARC4_C)
marcozecchini 0:9fca2b23d0ba 390 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 391 { MBEDTLS_TLS_ECDHE_ECDSA_WITH_RC4_128_SHA, "TLS-ECDHE-ECDSA-WITH-RC4-128-SHA",
marcozecchini 0:9fca2b23d0ba 392 MBEDTLS_CIPHER_ARC4_128, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA,
marcozecchini 0:9fca2b23d0ba 393 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 394 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 395 MBEDTLS_CIPHERSUITE_NODTLS },
marcozecchini 0:9fca2b23d0ba 396 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 397 #endif /* MBEDTLS_ARC4_C */
marcozecchini 0:9fca2b23d0ba 398
marcozecchini 0:9fca2b23d0ba 399 #if defined(MBEDTLS_CIPHER_NULL_CIPHER)
marcozecchini 0:9fca2b23d0ba 400 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 401 { MBEDTLS_TLS_ECDHE_ECDSA_WITH_NULL_SHA, "TLS-ECDHE-ECDSA-WITH-NULL-SHA",
marcozecchini 0:9fca2b23d0ba 402 MBEDTLS_CIPHER_NULL, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA,
marcozecchini 0:9fca2b23d0ba 403 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 404 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 405 MBEDTLS_CIPHERSUITE_WEAK },
marcozecchini 0:9fca2b23d0ba 406 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 407 #endif /* MBEDTLS_CIPHER_NULL_CIPHER */
marcozecchini 0:9fca2b23d0ba 408 #endif /* MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED */
marcozecchini 0:9fca2b23d0ba 409
marcozecchini 0:9fca2b23d0ba 410 #if defined(MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED)
marcozecchini 0:9fca2b23d0ba 411 #if defined(MBEDTLS_AES_C)
marcozecchini 0:9fca2b23d0ba 412 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 413 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 414 { MBEDTLS_TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, "TLS-ECDHE-RSA-WITH-AES-128-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 415 MBEDTLS_CIPHER_AES_128_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_ECDHE_RSA,
marcozecchini 0:9fca2b23d0ba 416 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 417 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 418 0 },
marcozecchini 0:9fca2b23d0ba 419 { MBEDTLS_TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, "TLS-ECDHE-RSA-WITH-AES-256-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 420 MBEDTLS_CIPHER_AES_256_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_ECDHE_RSA,
marcozecchini 0:9fca2b23d0ba 421 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 422 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 423 0 },
marcozecchini 0:9fca2b23d0ba 424 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 425 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 426 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 427 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 428 { MBEDTLS_TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, "TLS-ECDHE-RSA-WITH-AES-128-CBC-SHA256",
marcozecchini 0:9fca2b23d0ba 429 MBEDTLS_CIPHER_AES_128_CBC, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_ECDHE_RSA,
marcozecchini 0:9fca2b23d0ba 430 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 431 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 432 0 },
marcozecchini 0:9fca2b23d0ba 433 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 434 #if defined(MBEDTLS_GCM_C)
marcozecchini 0:9fca2b23d0ba 435 { MBEDTLS_TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, "TLS-ECDHE-RSA-WITH-AES-128-GCM-SHA256",
marcozecchini 0:9fca2b23d0ba 436 MBEDTLS_CIPHER_AES_128_GCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_ECDHE_RSA,
marcozecchini 0:9fca2b23d0ba 437 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 438 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 439 0 },
marcozecchini 0:9fca2b23d0ba 440 #endif /* MBEDTLS_GCM_C */
marcozecchini 0:9fca2b23d0ba 441 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 442 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 443 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 444 { MBEDTLS_TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384, "TLS-ECDHE-RSA-WITH-AES-256-CBC-SHA384",
marcozecchini 0:9fca2b23d0ba 445 MBEDTLS_CIPHER_AES_256_CBC, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_ECDHE_RSA,
marcozecchini 0:9fca2b23d0ba 446 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 447 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 448 0 },
marcozecchini 0:9fca2b23d0ba 449 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 450 #if defined(MBEDTLS_GCM_C)
marcozecchini 0:9fca2b23d0ba 451 { MBEDTLS_TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384, "TLS-ECDHE-RSA-WITH-AES-256-GCM-SHA384",
marcozecchini 0:9fca2b23d0ba 452 MBEDTLS_CIPHER_AES_256_GCM, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_ECDHE_RSA,
marcozecchini 0:9fca2b23d0ba 453 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 454 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 455 0 },
marcozecchini 0:9fca2b23d0ba 456 #endif /* MBEDTLS_GCM_C */
marcozecchini 0:9fca2b23d0ba 457 #endif /* MBEDTLS_SHA512_C */
marcozecchini 0:9fca2b23d0ba 458 #endif /* MBEDTLS_AES_C */
marcozecchini 0:9fca2b23d0ba 459
marcozecchini 0:9fca2b23d0ba 460 #if defined(MBEDTLS_CAMELLIA_C)
marcozecchini 0:9fca2b23d0ba 461 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 462 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 463 { MBEDTLS_TLS_ECDHE_RSA_WITH_CAMELLIA_128_CBC_SHA256, "TLS-ECDHE-RSA-WITH-CAMELLIA-128-CBC-SHA256",
marcozecchini 0:9fca2b23d0ba 464 MBEDTLS_CIPHER_CAMELLIA_128_CBC, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_ECDHE_RSA,
marcozecchini 0:9fca2b23d0ba 465 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 466 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 467 0 },
marcozecchini 0:9fca2b23d0ba 468 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 469 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 470 { MBEDTLS_TLS_ECDHE_RSA_WITH_CAMELLIA_256_CBC_SHA384, "TLS-ECDHE-RSA-WITH-CAMELLIA-256-CBC-SHA384",
marcozecchini 0:9fca2b23d0ba 471 MBEDTLS_CIPHER_CAMELLIA_256_CBC, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_ECDHE_RSA,
marcozecchini 0:9fca2b23d0ba 472 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 473 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 474 0 },
marcozecchini 0:9fca2b23d0ba 475 #endif /* MBEDTLS_SHA512_C */
marcozecchini 0:9fca2b23d0ba 476 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 477
marcozecchini 0:9fca2b23d0ba 478 #if defined(MBEDTLS_GCM_C)
marcozecchini 0:9fca2b23d0ba 479 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 480 { MBEDTLS_TLS_ECDHE_RSA_WITH_CAMELLIA_128_GCM_SHA256, "TLS-ECDHE-RSA-WITH-CAMELLIA-128-GCM-SHA256",
marcozecchini 0:9fca2b23d0ba 481 MBEDTLS_CIPHER_CAMELLIA_128_GCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_ECDHE_RSA,
marcozecchini 0:9fca2b23d0ba 482 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 483 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 484 0 },
marcozecchini 0:9fca2b23d0ba 485 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 486 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 487 { MBEDTLS_TLS_ECDHE_RSA_WITH_CAMELLIA_256_GCM_SHA384, "TLS-ECDHE-RSA-WITH-CAMELLIA-256-GCM-SHA384",
marcozecchini 0:9fca2b23d0ba 488 MBEDTLS_CIPHER_CAMELLIA_256_GCM, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_ECDHE_RSA,
marcozecchini 0:9fca2b23d0ba 489 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 490 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 491 0 },
marcozecchini 0:9fca2b23d0ba 492 #endif /* MBEDTLS_SHA512_C */
marcozecchini 0:9fca2b23d0ba 493 #endif /* MBEDTLS_GCM_C */
marcozecchini 0:9fca2b23d0ba 494 #endif /* MBEDTLS_CAMELLIA_C */
marcozecchini 0:9fca2b23d0ba 495
marcozecchini 0:9fca2b23d0ba 496 #if defined(MBEDTLS_DES_C)
marcozecchini 0:9fca2b23d0ba 497 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 498 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 499 { MBEDTLS_TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA, "TLS-ECDHE-RSA-WITH-3DES-EDE-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 500 MBEDTLS_CIPHER_DES_EDE3_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_ECDHE_RSA,
marcozecchini 0:9fca2b23d0ba 501 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 502 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 503 0 },
marcozecchini 0:9fca2b23d0ba 504 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 505 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 506 #endif /* MBEDTLS_DES_C */
marcozecchini 0:9fca2b23d0ba 507
marcozecchini 0:9fca2b23d0ba 508 #if defined(MBEDTLS_ARC4_C)
marcozecchini 0:9fca2b23d0ba 509 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 510 { MBEDTLS_TLS_ECDHE_RSA_WITH_RC4_128_SHA, "TLS-ECDHE-RSA-WITH-RC4-128-SHA",
marcozecchini 0:9fca2b23d0ba 511 MBEDTLS_CIPHER_ARC4_128, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_ECDHE_RSA,
marcozecchini 0:9fca2b23d0ba 512 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 513 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 514 MBEDTLS_CIPHERSUITE_NODTLS },
marcozecchini 0:9fca2b23d0ba 515 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 516 #endif /* MBEDTLS_ARC4_C */
marcozecchini 0:9fca2b23d0ba 517
marcozecchini 0:9fca2b23d0ba 518 #if defined(MBEDTLS_CIPHER_NULL_CIPHER)
marcozecchini 0:9fca2b23d0ba 519 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 520 { MBEDTLS_TLS_ECDHE_RSA_WITH_NULL_SHA, "TLS-ECDHE-RSA-WITH-NULL-SHA",
marcozecchini 0:9fca2b23d0ba 521 MBEDTLS_CIPHER_NULL, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_ECDHE_RSA,
marcozecchini 0:9fca2b23d0ba 522 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 523 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 524 MBEDTLS_CIPHERSUITE_WEAK },
marcozecchini 0:9fca2b23d0ba 525 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 526 #endif /* MBEDTLS_CIPHER_NULL_CIPHER */
marcozecchini 0:9fca2b23d0ba 527 #endif /* MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED */
marcozecchini 0:9fca2b23d0ba 528
marcozecchini 0:9fca2b23d0ba 529 #if defined(MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED)
marcozecchini 0:9fca2b23d0ba 530 #if defined(MBEDTLS_AES_C)
marcozecchini 0:9fca2b23d0ba 531 #if defined(MBEDTLS_SHA512_C) && defined(MBEDTLS_GCM_C)
marcozecchini 0:9fca2b23d0ba 532 { MBEDTLS_TLS_DHE_RSA_WITH_AES_256_GCM_SHA384, "TLS-DHE-RSA-WITH-AES-256-GCM-SHA384",
marcozecchini 0:9fca2b23d0ba 533 MBEDTLS_CIPHER_AES_256_GCM, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_DHE_RSA,
marcozecchini 0:9fca2b23d0ba 534 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 535 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 536 0 },
marcozecchini 0:9fca2b23d0ba 537 #endif /* MBEDTLS_SHA512_C && MBEDTLS_GCM_C */
marcozecchini 0:9fca2b23d0ba 538
marcozecchini 0:9fca2b23d0ba 539 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 540 #if defined(MBEDTLS_GCM_C)
marcozecchini 0:9fca2b23d0ba 541 { MBEDTLS_TLS_DHE_RSA_WITH_AES_128_GCM_SHA256, "TLS-DHE-RSA-WITH-AES-128-GCM-SHA256",
marcozecchini 0:9fca2b23d0ba 542 MBEDTLS_CIPHER_AES_128_GCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_DHE_RSA,
marcozecchini 0:9fca2b23d0ba 543 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 544 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 545 0 },
marcozecchini 0:9fca2b23d0ba 546 #endif /* MBEDTLS_GCM_C */
marcozecchini 0:9fca2b23d0ba 547
marcozecchini 0:9fca2b23d0ba 548 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 549 { MBEDTLS_TLS_DHE_RSA_WITH_AES_128_CBC_SHA256, "TLS-DHE-RSA-WITH-AES-128-CBC-SHA256",
marcozecchini 0:9fca2b23d0ba 550 MBEDTLS_CIPHER_AES_128_CBC, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_DHE_RSA,
marcozecchini 0:9fca2b23d0ba 551 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 552 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 553 0 },
marcozecchini 0:9fca2b23d0ba 554
marcozecchini 0:9fca2b23d0ba 555 { MBEDTLS_TLS_DHE_RSA_WITH_AES_256_CBC_SHA256, "TLS-DHE-RSA-WITH-AES-256-CBC-SHA256",
marcozecchini 0:9fca2b23d0ba 556 MBEDTLS_CIPHER_AES_256_CBC, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_DHE_RSA,
marcozecchini 0:9fca2b23d0ba 557 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 558 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 559 0 },
marcozecchini 0:9fca2b23d0ba 560 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 561 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 562
marcozecchini 0:9fca2b23d0ba 563 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 564 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 565 { MBEDTLS_TLS_DHE_RSA_WITH_AES_128_CBC_SHA, "TLS-DHE-RSA-WITH-AES-128-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 566 MBEDTLS_CIPHER_AES_128_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_DHE_RSA,
marcozecchini 0:9fca2b23d0ba 567 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_0,
marcozecchini 0:9fca2b23d0ba 568 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 569 0 },
marcozecchini 0:9fca2b23d0ba 570
marcozecchini 0:9fca2b23d0ba 571 { MBEDTLS_TLS_DHE_RSA_WITH_AES_256_CBC_SHA, "TLS-DHE-RSA-WITH-AES-256-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 572 MBEDTLS_CIPHER_AES_256_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_DHE_RSA,
marcozecchini 0:9fca2b23d0ba 573 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_0,
marcozecchini 0:9fca2b23d0ba 574 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 575 0 },
marcozecchini 0:9fca2b23d0ba 576 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 577 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 578 #if defined(MBEDTLS_CCM_C)
marcozecchini 0:9fca2b23d0ba 579 { MBEDTLS_TLS_DHE_RSA_WITH_AES_256_CCM, "TLS-DHE-RSA-WITH-AES-256-CCM",
marcozecchini 0:9fca2b23d0ba 580 MBEDTLS_CIPHER_AES_256_CCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_DHE_RSA,
marcozecchini 0:9fca2b23d0ba 581 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 582 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 583 0 },
marcozecchini 0:9fca2b23d0ba 584 { MBEDTLS_TLS_DHE_RSA_WITH_AES_256_CCM_8, "TLS-DHE-RSA-WITH-AES-256-CCM-8",
marcozecchini 0:9fca2b23d0ba 585 MBEDTLS_CIPHER_AES_256_CCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_DHE_RSA,
marcozecchini 0:9fca2b23d0ba 586 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 587 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 588 MBEDTLS_CIPHERSUITE_SHORT_TAG },
marcozecchini 0:9fca2b23d0ba 589 { MBEDTLS_TLS_DHE_RSA_WITH_AES_128_CCM, "TLS-DHE-RSA-WITH-AES-128-CCM",
marcozecchini 0:9fca2b23d0ba 590 MBEDTLS_CIPHER_AES_128_CCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_DHE_RSA,
marcozecchini 0:9fca2b23d0ba 591 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 592 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 593 0 },
marcozecchini 0:9fca2b23d0ba 594 { MBEDTLS_TLS_DHE_RSA_WITH_AES_128_CCM_8, "TLS-DHE-RSA-WITH-AES-128-CCM-8",
marcozecchini 0:9fca2b23d0ba 595 MBEDTLS_CIPHER_AES_128_CCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_DHE_RSA,
marcozecchini 0:9fca2b23d0ba 596 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 597 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 598 MBEDTLS_CIPHERSUITE_SHORT_TAG },
marcozecchini 0:9fca2b23d0ba 599 #endif /* MBEDTLS_CCM_C */
marcozecchini 0:9fca2b23d0ba 600 #endif /* MBEDTLS_AES_C */
marcozecchini 0:9fca2b23d0ba 601
marcozecchini 0:9fca2b23d0ba 602 #if defined(MBEDTLS_CAMELLIA_C)
marcozecchini 0:9fca2b23d0ba 603 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 604 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 605 { MBEDTLS_TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA256, "TLS-DHE-RSA-WITH-CAMELLIA-128-CBC-SHA256",
marcozecchini 0:9fca2b23d0ba 606 MBEDTLS_CIPHER_CAMELLIA_128_CBC, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_DHE_RSA,
marcozecchini 0:9fca2b23d0ba 607 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 608 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 609 0 },
marcozecchini 0:9fca2b23d0ba 610
marcozecchini 0:9fca2b23d0ba 611 { MBEDTLS_TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA256, "TLS-DHE-RSA-WITH-CAMELLIA-256-CBC-SHA256",
marcozecchini 0:9fca2b23d0ba 612 MBEDTLS_CIPHER_CAMELLIA_256_CBC, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_DHE_RSA,
marcozecchini 0:9fca2b23d0ba 613 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 614 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 615 0 },
marcozecchini 0:9fca2b23d0ba 616 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 617
marcozecchini 0:9fca2b23d0ba 618 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 619 { MBEDTLS_TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA, "TLS-DHE-RSA-WITH-CAMELLIA-128-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 620 MBEDTLS_CIPHER_CAMELLIA_128_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_DHE_RSA,
marcozecchini 0:9fca2b23d0ba 621 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_0,
marcozecchini 0:9fca2b23d0ba 622 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 623 0 },
marcozecchini 0:9fca2b23d0ba 624
marcozecchini 0:9fca2b23d0ba 625 { MBEDTLS_TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA, "TLS-DHE-RSA-WITH-CAMELLIA-256-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 626 MBEDTLS_CIPHER_CAMELLIA_256_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_DHE_RSA,
marcozecchini 0:9fca2b23d0ba 627 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_0,
marcozecchini 0:9fca2b23d0ba 628 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 629 0 },
marcozecchini 0:9fca2b23d0ba 630 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 631 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 632 #if defined(MBEDTLS_GCM_C)
marcozecchini 0:9fca2b23d0ba 633 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 634 { MBEDTLS_TLS_DHE_RSA_WITH_CAMELLIA_128_GCM_SHA256, "TLS-DHE-RSA-WITH-CAMELLIA-128-GCM-SHA256",
marcozecchini 0:9fca2b23d0ba 635 MBEDTLS_CIPHER_CAMELLIA_128_GCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_DHE_RSA,
marcozecchini 0:9fca2b23d0ba 636 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 637 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 638 0 },
marcozecchini 0:9fca2b23d0ba 639 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 640
marcozecchini 0:9fca2b23d0ba 641 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 642 { MBEDTLS_TLS_DHE_RSA_WITH_CAMELLIA_256_GCM_SHA384, "TLS-DHE-RSA-WITH-CAMELLIA-256-GCM-SHA384",
marcozecchini 0:9fca2b23d0ba 643 MBEDTLS_CIPHER_CAMELLIA_256_GCM, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_DHE_RSA,
marcozecchini 0:9fca2b23d0ba 644 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 645 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 646 0 },
marcozecchini 0:9fca2b23d0ba 647 #endif /* MBEDTLS_SHA512_C */
marcozecchini 0:9fca2b23d0ba 648 #endif /* MBEDTLS_GCM_C */
marcozecchini 0:9fca2b23d0ba 649 #endif /* MBEDTLS_CAMELLIA_C */
marcozecchini 0:9fca2b23d0ba 650
marcozecchini 0:9fca2b23d0ba 651 #if defined(MBEDTLS_DES_C)
marcozecchini 0:9fca2b23d0ba 652 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 653 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 654 { MBEDTLS_TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA, "TLS-DHE-RSA-WITH-3DES-EDE-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 655 MBEDTLS_CIPHER_DES_EDE3_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_DHE_RSA,
marcozecchini 0:9fca2b23d0ba 656 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_0,
marcozecchini 0:9fca2b23d0ba 657 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 658 0 },
marcozecchini 0:9fca2b23d0ba 659 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 660 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 661 #endif /* MBEDTLS_DES_C */
marcozecchini 0:9fca2b23d0ba 662 #endif /* MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED */
marcozecchini 0:9fca2b23d0ba 663
marcozecchini 0:9fca2b23d0ba 664 #if defined(MBEDTLS_KEY_EXCHANGE_RSA_ENABLED)
marcozecchini 0:9fca2b23d0ba 665 #if defined(MBEDTLS_AES_C)
marcozecchini 0:9fca2b23d0ba 666 #if defined(MBEDTLS_SHA512_C) && defined(MBEDTLS_GCM_C)
marcozecchini 0:9fca2b23d0ba 667 { MBEDTLS_TLS_RSA_WITH_AES_256_GCM_SHA384, "TLS-RSA-WITH-AES-256-GCM-SHA384",
marcozecchini 0:9fca2b23d0ba 668 MBEDTLS_CIPHER_AES_256_GCM, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_RSA,
marcozecchini 0:9fca2b23d0ba 669 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 670 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 671 0 },
marcozecchini 0:9fca2b23d0ba 672 #endif /* MBEDTLS_SHA512_C && MBEDTLS_GCM_C */
marcozecchini 0:9fca2b23d0ba 673
marcozecchini 0:9fca2b23d0ba 674 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 675 #if defined(MBEDTLS_GCM_C)
marcozecchini 0:9fca2b23d0ba 676 { MBEDTLS_TLS_RSA_WITH_AES_128_GCM_SHA256, "TLS-RSA-WITH-AES-128-GCM-SHA256",
marcozecchini 0:9fca2b23d0ba 677 MBEDTLS_CIPHER_AES_128_GCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_RSA,
marcozecchini 0:9fca2b23d0ba 678 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 679 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 680 0 },
marcozecchini 0:9fca2b23d0ba 681 #endif /* MBEDTLS_GCM_C */
marcozecchini 0:9fca2b23d0ba 682
marcozecchini 0:9fca2b23d0ba 683 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 684 { MBEDTLS_TLS_RSA_WITH_AES_128_CBC_SHA256, "TLS-RSA-WITH-AES-128-CBC-SHA256",
marcozecchini 0:9fca2b23d0ba 685 MBEDTLS_CIPHER_AES_128_CBC, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_RSA,
marcozecchini 0:9fca2b23d0ba 686 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 687 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 688 0 },
marcozecchini 0:9fca2b23d0ba 689
marcozecchini 0:9fca2b23d0ba 690 { MBEDTLS_TLS_RSA_WITH_AES_256_CBC_SHA256, "TLS-RSA-WITH-AES-256-CBC-SHA256",
marcozecchini 0:9fca2b23d0ba 691 MBEDTLS_CIPHER_AES_256_CBC, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_RSA,
marcozecchini 0:9fca2b23d0ba 692 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 693 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 694 0 },
marcozecchini 0:9fca2b23d0ba 695 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 696 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 697
marcozecchini 0:9fca2b23d0ba 698 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 699 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 700 { MBEDTLS_TLS_RSA_WITH_AES_128_CBC_SHA, "TLS-RSA-WITH-AES-128-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 701 MBEDTLS_CIPHER_AES_128_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_RSA,
marcozecchini 0:9fca2b23d0ba 702 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_0,
marcozecchini 0:9fca2b23d0ba 703 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 704 0 },
marcozecchini 0:9fca2b23d0ba 705
marcozecchini 0:9fca2b23d0ba 706 { MBEDTLS_TLS_RSA_WITH_AES_256_CBC_SHA, "TLS-RSA-WITH-AES-256-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 707 MBEDTLS_CIPHER_AES_256_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_RSA,
marcozecchini 0:9fca2b23d0ba 708 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_0,
marcozecchini 0:9fca2b23d0ba 709 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 710 0 },
marcozecchini 0:9fca2b23d0ba 711 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 712 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 713 #if defined(MBEDTLS_CCM_C)
marcozecchini 0:9fca2b23d0ba 714 { MBEDTLS_TLS_RSA_WITH_AES_256_CCM, "TLS-RSA-WITH-AES-256-CCM",
marcozecchini 0:9fca2b23d0ba 715 MBEDTLS_CIPHER_AES_256_CCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_RSA,
marcozecchini 0:9fca2b23d0ba 716 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 717 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 718 0 },
marcozecchini 0:9fca2b23d0ba 719 { MBEDTLS_TLS_RSA_WITH_AES_256_CCM_8, "TLS-RSA-WITH-AES-256-CCM-8",
marcozecchini 0:9fca2b23d0ba 720 MBEDTLS_CIPHER_AES_256_CCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_RSA,
marcozecchini 0:9fca2b23d0ba 721 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 722 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 723 MBEDTLS_CIPHERSUITE_SHORT_TAG },
marcozecchini 0:9fca2b23d0ba 724 { MBEDTLS_TLS_RSA_WITH_AES_128_CCM, "TLS-RSA-WITH-AES-128-CCM",
marcozecchini 0:9fca2b23d0ba 725 MBEDTLS_CIPHER_AES_128_CCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_RSA,
marcozecchini 0:9fca2b23d0ba 726 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 727 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 728 0 },
marcozecchini 0:9fca2b23d0ba 729 { MBEDTLS_TLS_RSA_WITH_AES_128_CCM_8, "TLS-RSA-WITH-AES-128-CCM-8",
marcozecchini 0:9fca2b23d0ba 730 MBEDTLS_CIPHER_AES_128_CCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_RSA,
marcozecchini 0:9fca2b23d0ba 731 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 732 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 733 MBEDTLS_CIPHERSUITE_SHORT_TAG },
marcozecchini 0:9fca2b23d0ba 734 #endif /* MBEDTLS_CCM_C */
marcozecchini 0:9fca2b23d0ba 735 #endif /* MBEDTLS_AES_C */
marcozecchini 0:9fca2b23d0ba 736
marcozecchini 0:9fca2b23d0ba 737 #if defined(MBEDTLS_CAMELLIA_C)
marcozecchini 0:9fca2b23d0ba 738 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 739 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 740 { MBEDTLS_TLS_RSA_WITH_CAMELLIA_128_CBC_SHA256, "TLS-RSA-WITH-CAMELLIA-128-CBC-SHA256",
marcozecchini 0:9fca2b23d0ba 741 MBEDTLS_CIPHER_CAMELLIA_128_CBC, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_RSA,
marcozecchini 0:9fca2b23d0ba 742 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 743 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 744 0 },
marcozecchini 0:9fca2b23d0ba 745
marcozecchini 0:9fca2b23d0ba 746 { MBEDTLS_TLS_RSA_WITH_CAMELLIA_256_CBC_SHA256, "TLS-RSA-WITH-CAMELLIA-256-CBC-SHA256",
marcozecchini 0:9fca2b23d0ba 747 MBEDTLS_CIPHER_CAMELLIA_256_CBC, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_RSA,
marcozecchini 0:9fca2b23d0ba 748 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 749 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 750 0 },
marcozecchini 0:9fca2b23d0ba 751 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 752
marcozecchini 0:9fca2b23d0ba 753 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 754 { MBEDTLS_TLS_RSA_WITH_CAMELLIA_128_CBC_SHA, "TLS-RSA-WITH-CAMELLIA-128-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 755 MBEDTLS_CIPHER_CAMELLIA_128_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_RSA,
marcozecchini 0:9fca2b23d0ba 756 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_0,
marcozecchini 0:9fca2b23d0ba 757 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 758 0 },
marcozecchini 0:9fca2b23d0ba 759
marcozecchini 0:9fca2b23d0ba 760 { MBEDTLS_TLS_RSA_WITH_CAMELLIA_256_CBC_SHA, "TLS-RSA-WITH-CAMELLIA-256-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 761 MBEDTLS_CIPHER_CAMELLIA_256_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_RSA,
marcozecchini 0:9fca2b23d0ba 762 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_0,
marcozecchini 0:9fca2b23d0ba 763 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 764 0 },
marcozecchini 0:9fca2b23d0ba 765 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 766 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 767
marcozecchini 0:9fca2b23d0ba 768 #if defined(MBEDTLS_GCM_C)
marcozecchini 0:9fca2b23d0ba 769 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 770 { MBEDTLS_TLS_RSA_WITH_CAMELLIA_128_GCM_SHA256, "TLS-RSA-WITH-CAMELLIA-128-GCM-SHA256",
marcozecchini 0:9fca2b23d0ba 771 MBEDTLS_CIPHER_CAMELLIA_128_GCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_RSA,
marcozecchini 0:9fca2b23d0ba 772 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 773 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 774 0 },
marcozecchini 0:9fca2b23d0ba 775 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 776
marcozecchini 0:9fca2b23d0ba 777 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 778 { MBEDTLS_TLS_RSA_WITH_CAMELLIA_256_GCM_SHA384, "TLS-RSA-WITH-CAMELLIA-256-GCM-SHA384",
marcozecchini 0:9fca2b23d0ba 779 MBEDTLS_CIPHER_CAMELLIA_256_GCM, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_RSA,
marcozecchini 0:9fca2b23d0ba 780 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 781 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 782 0 },
marcozecchini 0:9fca2b23d0ba 783 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 784 #endif /* MBEDTLS_GCM_C */
marcozecchini 0:9fca2b23d0ba 785 #endif /* MBEDTLS_CAMELLIA_C */
marcozecchini 0:9fca2b23d0ba 786
marcozecchini 0:9fca2b23d0ba 787 #if defined(MBEDTLS_DES_C)
marcozecchini 0:9fca2b23d0ba 788 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 789 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 790 { MBEDTLS_TLS_RSA_WITH_3DES_EDE_CBC_SHA, "TLS-RSA-WITH-3DES-EDE-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 791 MBEDTLS_CIPHER_DES_EDE3_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_RSA,
marcozecchini 0:9fca2b23d0ba 792 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_0,
marcozecchini 0:9fca2b23d0ba 793 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 794 0 },
marcozecchini 0:9fca2b23d0ba 795 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 796 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 797 #endif /* MBEDTLS_DES_C */
marcozecchini 0:9fca2b23d0ba 798
marcozecchini 0:9fca2b23d0ba 799 #if defined(MBEDTLS_ARC4_C)
marcozecchini 0:9fca2b23d0ba 800 #if defined(MBEDTLS_MD5_C)
marcozecchini 0:9fca2b23d0ba 801 { MBEDTLS_TLS_RSA_WITH_RC4_128_MD5, "TLS-RSA-WITH-RC4-128-MD5",
marcozecchini 0:9fca2b23d0ba 802 MBEDTLS_CIPHER_ARC4_128, MBEDTLS_MD_MD5, MBEDTLS_KEY_EXCHANGE_RSA,
marcozecchini 0:9fca2b23d0ba 803 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_0,
marcozecchini 0:9fca2b23d0ba 804 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 805 MBEDTLS_CIPHERSUITE_NODTLS },
marcozecchini 0:9fca2b23d0ba 806 #endif
marcozecchini 0:9fca2b23d0ba 807
marcozecchini 0:9fca2b23d0ba 808 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 809 { MBEDTLS_TLS_RSA_WITH_RC4_128_SHA, "TLS-RSA-WITH-RC4-128-SHA",
marcozecchini 0:9fca2b23d0ba 810 MBEDTLS_CIPHER_ARC4_128, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_RSA,
marcozecchini 0:9fca2b23d0ba 811 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_0,
marcozecchini 0:9fca2b23d0ba 812 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 813 MBEDTLS_CIPHERSUITE_NODTLS },
marcozecchini 0:9fca2b23d0ba 814 #endif
marcozecchini 0:9fca2b23d0ba 815 #endif /* MBEDTLS_ARC4_C */
marcozecchini 0:9fca2b23d0ba 816 #endif /* MBEDTLS_KEY_EXCHANGE_RSA_ENABLED */
marcozecchini 0:9fca2b23d0ba 817
marcozecchini 0:9fca2b23d0ba 818 #if defined(MBEDTLS_KEY_EXCHANGE_ECDH_RSA_ENABLED)
marcozecchini 0:9fca2b23d0ba 819 #if defined(MBEDTLS_AES_C)
marcozecchini 0:9fca2b23d0ba 820 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 821 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 822 { MBEDTLS_TLS_ECDH_RSA_WITH_AES_128_CBC_SHA, "TLS-ECDH-RSA-WITH-AES-128-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 823 MBEDTLS_CIPHER_AES_128_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_ECDH_RSA,
marcozecchini 0:9fca2b23d0ba 824 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 825 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 826 0 },
marcozecchini 0:9fca2b23d0ba 827 { MBEDTLS_TLS_ECDH_RSA_WITH_AES_256_CBC_SHA, "TLS-ECDH-RSA-WITH-AES-256-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 828 MBEDTLS_CIPHER_AES_256_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_ECDH_RSA,
marcozecchini 0:9fca2b23d0ba 829 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 830 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 831 0 },
marcozecchini 0:9fca2b23d0ba 832 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 833 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 834 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 835 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 836 { MBEDTLS_TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256, "TLS-ECDH-RSA-WITH-AES-128-CBC-SHA256",
marcozecchini 0:9fca2b23d0ba 837 MBEDTLS_CIPHER_AES_128_CBC, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_ECDH_RSA,
marcozecchini 0:9fca2b23d0ba 838 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 839 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 840 0 },
marcozecchini 0:9fca2b23d0ba 841 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 842 #if defined(MBEDTLS_GCM_C)
marcozecchini 0:9fca2b23d0ba 843 { MBEDTLS_TLS_ECDH_RSA_WITH_AES_128_GCM_SHA256, "TLS-ECDH-RSA-WITH-AES-128-GCM-SHA256",
marcozecchini 0:9fca2b23d0ba 844 MBEDTLS_CIPHER_AES_128_GCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_ECDH_RSA,
marcozecchini 0:9fca2b23d0ba 845 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 846 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 847 0 },
marcozecchini 0:9fca2b23d0ba 848 #endif /* MBEDTLS_GCM_C */
marcozecchini 0:9fca2b23d0ba 849 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 850 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 851 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 852 { MBEDTLS_TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384, "TLS-ECDH-RSA-WITH-AES-256-CBC-SHA384",
marcozecchini 0:9fca2b23d0ba 853 MBEDTLS_CIPHER_AES_256_CBC, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_ECDH_RSA,
marcozecchini 0:9fca2b23d0ba 854 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 855 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 856 0 },
marcozecchini 0:9fca2b23d0ba 857 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 858 #if defined(MBEDTLS_GCM_C)
marcozecchini 0:9fca2b23d0ba 859 { MBEDTLS_TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384, "TLS-ECDH-RSA-WITH-AES-256-GCM-SHA384",
marcozecchini 0:9fca2b23d0ba 860 MBEDTLS_CIPHER_AES_256_GCM, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_ECDH_RSA,
marcozecchini 0:9fca2b23d0ba 861 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 862 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 863 0 },
marcozecchini 0:9fca2b23d0ba 864 #endif /* MBEDTLS_GCM_C */
marcozecchini 0:9fca2b23d0ba 865 #endif /* MBEDTLS_SHA512_C */
marcozecchini 0:9fca2b23d0ba 866 #endif /* MBEDTLS_AES_C */
marcozecchini 0:9fca2b23d0ba 867
marcozecchini 0:9fca2b23d0ba 868 #if defined(MBEDTLS_CAMELLIA_C)
marcozecchini 0:9fca2b23d0ba 869 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 870 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 871 { MBEDTLS_TLS_ECDH_RSA_WITH_CAMELLIA_128_CBC_SHA256, "TLS-ECDH-RSA-WITH-CAMELLIA-128-CBC-SHA256",
marcozecchini 0:9fca2b23d0ba 872 MBEDTLS_CIPHER_CAMELLIA_128_CBC, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_ECDH_RSA,
marcozecchini 0:9fca2b23d0ba 873 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 874 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 875 0 },
marcozecchini 0:9fca2b23d0ba 876 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 877 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 878 { MBEDTLS_TLS_ECDH_RSA_WITH_CAMELLIA_256_CBC_SHA384, "TLS-ECDH-RSA-WITH-CAMELLIA-256-CBC-SHA384",
marcozecchini 0:9fca2b23d0ba 879 MBEDTLS_CIPHER_CAMELLIA_256_CBC, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_ECDH_RSA,
marcozecchini 0:9fca2b23d0ba 880 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 881 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 882 0 },
marcozecchini 0:9fca2b23d0ba 883 #endif /* MBEDTLS_SHA512_C */
marcozecchini 0:9fca2b23d0ba 884 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 885
marcozecchini 0:9fca2b23d0ba 886 #if defined(MBEDTLS_GCM_C)
marcozecchini 0:9fca2b23d0ba 887 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 888 { MBEDTLS_TLS_ECDH_RSA_WITH_CAMELLIA_128_GCM_SHA256, "TLS-ECDH-RSA-WITH-CAMELLIA-128-GCM-SHA256",
marcozecchini 0:9fca2b23d0ba 889 MBEDTLS_CIPHER_CAMELLIA_128_GCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_ECDH_RSA,
marcozecchini 0:9fca2b23d0ba 890 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 891 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 892 0 },
marcozecchini 0:9fca2b23d0ba 893 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 894 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 895 { MBEDTLS_TLS_ECDH_RSA_WITH_CAMELLIA_256_GCM_SHA384, "TLS-ECDH-RSA-WITH-CAMELLIA-256-GCM-SHA384",
marcozecchini 0:9fca2b23d0ba 896 MBEDTLS_CIPHER_CAMELLIA_256_GCM, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_ECDH_RSA,
marcozecchini 0:9fca2b23d0ba 897 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 898 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 899 0 },
marcozecchini 0:9fca2b23d0ba 900 #endif /* MBEDTLS_SHA512_C */
marcozecchini 0:9fca2b23d0ba 901 #endif /* MBEDTLS_GCM_C */
marcozecchini 0:9fca2b23d0ba 902 #endif /* MBEDTLS_CAMELLIA_C */
marcozecchini 0:9fca2b23d0ba 903
marcozecchini 0:9fca2b23d0ba 904 #if defined(MBEDTLS_DES_C)
marcozecchini 0:9fca2b23d0ba 905 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 906 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 907 { MBEDTLS_TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA, "TLS-ECDH-RSA-WITH-3DES-EDE-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 908 MBEDTLS_CIPHER_DES_EDE3_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_ECDH_RSA,
marcozecchini 0:9fca2b23d0ba 909 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 910 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 911 0 },
marcozecchini 0:9fca2b23d0ba 912 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 913 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 914 #endif /* MBEDTLS_DES_C */
marcozecchini 0:9fca2b23d0ba 915
marcozecchini 0:9fca2b23d0ba 916 #if defined(MBEDTLS_ARC4_C)
marcozecchini 0:9fca2b23d0ba 917 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 918 { MBEDTLS_TLS_ECDH_RSA_WITH_RC4_128_SHA, "TLS-ECDH-RSA-WITH-RC4-128-SHA",
marcozecchini 0:9fca2b23d0ba 919 MBEDTLS_CIPHER_ARC4_128, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_ECDH_RSA,
marcozecchini 0:9fca2b23d0ba 920 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 921 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 922 MBEDTLS_CIPHERSUITE_NODTLS },
marcozecchini 0:9fca2b23d0ba 923 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 924 #endif /* MBEDTLS_ARC4_C */
marcozecchini 0:9fca2b23d0ba 925
marcozecchini 0:9fca2b23d0ba 926 #if defined(MBEDTLS_CIPHER_NULL_CIPHER)
marcozecchini 0:9fca2b23d0ba 927 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 928 { MBEDTLS_TLS_ECDH_RSA_WITH_NULL_SHA, "TLS-ECDH-RSA-WITH-NULL-SHA",
marcozecchini 0:9fca2b23d0ba 929 MBEDTLS_CIPHER_NULL, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_ECDH_RSA,
marcozecchini 0:9fca2b23d0ba 930 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 931 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 932 MBEDTLS_CIPHERSUITE_WEAK },
marcozecchini 0:9fca2b23d0ba 933 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 934 #endif /* MBEDTLS_CIPHER_NULL_CIPHER */
marcozecchini 0:9fca2b23d0ba 935 #endif /* MBEDTLS_KEY_EXCHANGE_ECDH_RSA_ENABLED */
marcozecchini 0:9fca2b23d0ba 936
marcozecchini 0:9fca2b23d0ba 937 #if defined(MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA_ENABLED)
marcozecchini 0:9fca2b23d0ba 938 #if defined(MBEDTLS_AES_C)
marcozecchini 0:9fca2b23d0ba 939 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 940 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 941 { MBEDTLS_TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA, "TLS-ECDH-ECDSA-WITH-AES-128-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 942 MBEDTLS_CIPHER_AES_128_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA,
marcozecchini 0:9fca2b23d0ba 943 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 944 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 945 0 },
marcozecchini 0:9fca2b23d0ba 946 { MBEDTLS_TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA, "TLS-ECDH-ECDSA-WITH-AES-256-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 947 MBEDTLS_CIPHER_AES_256_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA,
marcozecchini 0:9fca2b23d0ba 948 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 949 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 950 0 },
marcozecchini 0:9fca2b23d0ba 951 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 952 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 953 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 954 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 955 { MBEDTLS_TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256, "TLS-ECDH-ECDSA-WITH-AES-128-CBC-SHA256",
marcozecchini 0:9fca2b23d0ba 956 MBEDTLS_CIPHER_AES_128_CBC, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA,
marcozecchini 0:9fca2b23d0ba 957 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 958 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 959 0 },
marcozecchini 0:9fca2b23d0ba 960 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 961 #if defined(MBEDTLS_GCM_C)
marcozecchini 0:9fca2b23d0ba 962 { MBEDTLS_TLS_ECDH_ECDSA_WITH_AES_128_GCM_SHA256, "TLS-ECDH-ECDSA-WITH-AES-128-GCM-SHA256",
marcozecchini 0:9fca2b23d0ba 963 MBEDTLS_CIPHER_AES_128_GCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA,
marcozecchini 0:9fca2b23d0ba 964 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 965 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 966 0 },
marcozecchini 0:9fca2b23d0ba 967 #endif /* MBEDTLS_GCM_C */
marcozecchini 0:9fca2b23d0ba 968 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 969 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 970 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 971 { MBEDTLS_TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384, "TLS-ECDH-ECDSA-WITH-AES-256-CBC-SHA384",
marcozecchini 0:9fca2b23d0ba 972 MBEDTLS_CIPHER_AES_256_CBC, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA,
marcozecchini 0:9fca2b23d0ba 973 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 974 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 975 0 },
marcozecchini 0:9fca2b23d0ba 976 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 977 #if defined(MBEDTLS_GCM_C)
marcozecchini 0:9fca2b23d0ba 978 { MBEDTLS_TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384, "TLS-ECDH-ECDSA-WITH-AES-256-GCM-SHA384",
marcozecchini 0:9fca2b23d0ba 979 MBEDTLS_CIPHER_AES_256_GCM, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA,
marcozecchini 0:9fca2b23d0ba 980 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 981 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 982 0 },
marcozecchini 0:9fca2b23d0ba 983 #endif /* MBEDTLS_GCM_C */
marcozecchini 0:9fca2b23d0ba 984 #endif /* MBEDTLS_SHA512_C */
marcozecchini 0:9fca2b23d0ba 985 #endif /* MBEDTLS_AES_C */
marcozecchini 0:9fca2b23d0ba 986
marcozecchini 0:9fca2b23d0ba 987 #if defined(MBEDTLS_CAMELLIA_C)
marcozecchini 0:9fca2b23d0ba 988 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 989 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 990 { MBEDTLS_TLS_ECDH_ECDSA_WITH_CAMELLIA_128_CBC_SHA256, "TLS-ECDH-ECDSA-WITH-CAMELLIA-128-CBC-SHA256",
marcozecchini 0:9fca2b23d0ba 991 MBEDTLS_CIPHER_CAMELLIA_128_CBC, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA,
marcozecchini 0:9fca2b23d0ba 992 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 993 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 994 0 },
marcozecchini 0:9fca2b23d0ba 995 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 996 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 997 { MBEDTLS_TLS_ECDH_ECDSA_WITH_CAMELLIA_256_CBC_SHA384, "TLS-ECDH-ECDSA-WITH-CAMELLIA-256-CBC-SHA384",
marcozecchini 0:9fca2b23d0ba 998 MBEDTLS_CIPHER_CAMELLIA_256_CBC, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA,
marcozecchini 0:9fca2b23d0ba 999 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1000 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1001 0 },
marcozecchini 0:9fca2b23d0ba 1002 #endif /* MBEDTLS_SHA512_C */
marcozecchini 0:9fca2b23d0ba 1003 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 1004
marcozecchini 0:9fca2b23d0ba 1005 #if defined(MBEDTLS_GCM_C)
marcozecchini 0:9fca2b23d0ba 1006 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 1007 { MBEDTLS_TLS_ECDH_ECDSA_WITH_CAMELLIA_128_GCM_SHA256, "TLS-ECDH-ECDSA-WITH-CAMELLIA-128-GCM-SHA256",
marcozecchini 0:9fca2b23d0ba 1008 MBEDTLS_CIPHER_CAMELLIA_128_GCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA,
marcozecchini 0:9fca2b23d0ba 1009 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1010 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1011 0 },
marcozecchini 0:9fca2b23d0ba 1012 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 1013 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 1014 { MBEDTLS_TLS_ECDH_ECDSA_WITH_CAMELLIA_256_GCM_SHA384, "TLS-ECDH-ECDSA-WITH-CAMELLIA-256-GCM-SHA384",
marcozecchini 0:9fca2b23d0ba 1015 MBEDTLS_CIPHER_CAMELLIA_256_GCM, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA,
marcozecchini 0:9fca2b23d0ba 1016 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1017 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1018 0 },
marcozecchini 0:9fca2b23d0ba 1019 #endif /* MBEDTLS_SHA512_C */
marcozecchini 0:9fca2b23d0ba 1020 #endif /* MBEDTLS_GCM_C */
marcozecchini 0:9fca2b23d0ba 1021 #endif /* MBEDTLS_CAMELLIA_C */
marcozecchini 0:9fca2b23d0ba 1022
marcozecchini 0:9fca2b23d0ba 1023 #if defined(MBEDTLS_DES_C)
marcozecchini 0:9fca2b23d0ba 1024 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 1025 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 1026 { MBEDTLS_TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA, "TLS-ECDH-ECDSA-WITH-3DES-EDE-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 1027 MBEDTLS_CIPHER_DES_EDE3_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA,
marcozecchini 0:9fca2b23d0ba 1028 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1029 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1030 0 },
marcozecchini 0:9fca2b23d0ba 1031 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 1032 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 1033 #endif /* MBEDTLS_DES_C */
marcozecchini 0:9fca2b23d0ba 1034
marcozecchini 0:9fca2b23d0ba 1035 #if defined(MBEDTLS_ARC4_C)
marcozecchini 0:9fca2b23d0ba 1036 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 1037 { MBEDTLS_TLS_ECDH_ECDSA_WITH_RC4_128_SHA, "TLS-ECDH-ECDSA-WITH-RC4-128-SHA",
marcozecchini 0:9fca2b23d0ba 1038 MBEDTLS_CIPHER_ARC4_128, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA,
marcozecchini 0:9fca2b23d0ba 1039 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1040 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1041 MBEDTLS_CIPHERSUITE_NODTLS },
marcozecchini 0:9fca2b23d0ba 1042 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 1043 #endif /* MBEDTLS_ARC4_C */
marcozecchini 0:9fca2b23d0ba 1044
marcozecchini 0:9fca2b23d0ba 1045 #if defined(MBEDTLS_CIPHER_NULL_CIPHER)
marcozecchini 0:9fca2b23d0ba 1046 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 1047 { MBEDTLS_TLS_ECDH_ECDSA_WITH_NULL_SHA, "TLS-ECDH-ECDSA-WITH-NULL-SHA",
marcozecchini 0:9fca2b23d0ba 1048 MBEDTLS_CIPHER_NULL, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA,
marcozecchini 0:9fca2b23d0ba 1049 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1050 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1051 MBEDTLS_CIPHERSUITE_WEAK },
marcozecchini 0:9fca2b23d0ba 1052 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 1053 #endif /* MBEDTLS_CIPHER_NULL_CIPHER */
marcozecchini 0:9fca2b23d0ba 1054 #endif /* MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA_ENABLED */
marcozecchini 0:9fca2b23d0ba 1055
marcozecchini 0:9fca2b23d0ba 1056 #if defined(MBEDTLS_KEY_EXCHANGE_PSK_ENABLED)
marcozecchini 0:9fca2b23d0ba 1057 #if defined(MBEDTLS_AES_C)
marcozecchini 0:9fca2b23d0ba 1058 #if defined(MBEDTLS_GCM_C)
marcozecchini 0:9fca2b23d0ba 1059 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 1060 { MBEDTLS_TLS_PSK_WITH_AES_128_GCM_SHA256, "TLS-PSK-WITH-AES-128-GCM-SHA256",
marcozecchini 0:9fca2b23d0ba 1061 MBEDTLS_CIPHER_AES_128_GCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_PSK,
marcozecchini 0:9fca2b23d0ba 1062 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1063 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1064 0 },
marcozecchini 0:9fca2b23d0ba 1065 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 1066
marcozecchini 0:9fca2b23d0ba 1067 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 1068 { MBEDTLS_TLS_PSK_WITH_AES_256_GCM_SHA384, "TLS-PSK-WITH-AES-256-GCM-SHA384",
marcozecchini 0:9fca2b23d0ba 1069 MBEDTLS_CIPHER_AES_256_GCM, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_PSK,
marcozecchini 0:9fca2b23d0ba 1070 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1071 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1072 0 },
marcozecchini 0:9fca2b23d0ba 1073 #endif /* MBEDTLS_SHA512_C */
marcozecchini 0:9fca2b23d0ba 1074 #endif /* MBEDTLS_GCM_C */
marcozecchini 0:9fca2b23d0ba 1075
marcozecchini 0:9fca2b23d0ba 1076 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 1077 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 1078 { MBEDTLS_TLS_PSK_WITH_AES_128_CBC_SHA256, "TLS-PSK-WITH-AES-128-CBC-SHA256",
marcozecchini 0:9fca2b23d0ba 1079 MBEDTLS_CIPHER_AES_128_CBC, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_PSK,
marcozecchini 0:9fca2b23d0ba 1080 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1081 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1082 0 },
marcozecchini 0:9fca2b23d0ba 1083 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 1084
marcozecchini 0:9fca2b23d0ba 1085 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 1086 { MBEDTLS_TLS_PSK_WITH_AES_256_CBC_SHA384, "TLS-PSK-WITH-AES-256-CBC-SHA384",
marcozecchini 0:9fca2b23d0ba 1087 MBEDTLS_CIPHER_AES_256_CBC, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_PSK,
marcozecchini 0:9fca2b23d0ba 1088 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1089 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1090 0 },
marcozecchini 0:9fca2b23d0ba 1091 #endif /* MBEDTLS_SHA512_C */
marcozecchini 0:9fca2b23d0ba 1092
marcozecchini 0:9fca2b23d0ba 1093 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 1094 { MBEDTLS_TLS_PSK_WITH_AES_128_CBC_SHA, "TLS-PSK-WITH-AES-128-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 1095 MBEDTLS_CIPHER_AES_128_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_PSK,
marcozecchini 0:9fca2b23d0ba 1096 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_0,
marcozecchini 0:9fca2b23d0ba 1097 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1098 0 },
marcozecchini 0:9fca2b23d0ba 1099
marcozecchini 0:9fca2b23d0ba 1100 { MBEDTLS_TLS_PSK_WITH_AES_256_CBC_SHA, "TLS-PSK-WITH-AES-256-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 1101 MBEDTLS_CIPHER_AES_256_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_PSK,
marcozecchini 0:9fca2b23d0ba 1102 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_0,
marcozecchini 0:9fca2b23d0ba 1103 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1104 0 },
marcozecchini 0:9fca2b23d0ba 1105 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 1106 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 1107 #if defined(MBEDTLS_CCM_C)
marcozecchini 0:9fca2b23d0ba 1108 { MBEDTLS_TLS_PSK_WITH_AES_256_CCM, "TLS-PSK-WITH-AES-256-CCM",
marcozecchini 0:9fca2b23d0ba 1109 MBEDTLS_CIPHER_AES_256_CCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_PSK,
marcozecchini 0:9fca2b23d0ba 1110 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1111 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1112 0 },
marcozecchini 0:9fca2b23d0ba 1113 { MBEDTLS_TLS_PSK_WITH_AES_256_CCM_8, "TLS-PSK-WITH-AES-256-CCM-8",
marcozecchini 0:9fca2b23d0ba 1114 MBEDTLS_CIPHER_AES_256_CCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_PSK,
marcozecchini 0:9fca2b23d0ba 1115 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1116 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1117 MBEDTLS_CIPHERSUITE_SHORT_TAG },
marcozecchini 0:9fca2b23d0ba 1118 { MBEDTLS_TLS_PSK_WITH_AES_128_CCM, "TLS-PSK-WITH-AES-128-CCM",
marcozecchini 0:9fca2b23d0ba 1119 MBEDTLS_CIPHER_AES_128_CCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_PSK,
marcozecchini 0:9fca2b23d0ba 1120 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1121 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1122 0 },
marcozecchini 0:9fca2b23d0ba 1123 { MBEDTLS_TLS_PSK_WITH_AES_128_CCM_8, "TLS-PSK-WITH-AES-128-CCM-8",
marcozecchini 0:9fca2b23d0ba 1124 MBEDTLS_CIPHER_AES_128_CCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_PSK,
marcozecchini 0:9fca2b23d0ba 1125 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1126 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1127 MBEDTLS_CIPHERSUITE_SHORT_TAG },
marcozecchini 0:9fca2b23d0ba 1128 #endif /* MBEDTLS_CCM_C */
marcozecchini 0:9fca2b23d0ba 1129 #endif /* MBEDTLS_AES_C */
marcozecchini 0:9fca2b23d0ba 1130
marcozecchini 0:9fca2b23d0ba 1131 #if defined(MBEDTLS_CAMELLIA_C)
marcozecchini 0:9fca2b23d0ba 1132 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 1133 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 1134 { MBEDTLS_TLS_PSK_WITH_CAMELLIA_128_CBC_SHA256, "TLS-PSK-WITH-CAMELLIA-128-CBC-SHA256",
marcozecchini 0:9fca2b23d0ba 1135 MBEDTLS_CIPHER_CAMELLIA_128_CBC, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_PSK,
marcozecchini 0:9fca2b23d0ba 1136 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1137 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1138 0 },
marcozecchini 0:9fca2b23d0ba 1139 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 1140
marcozecchini 0:9fca2b23d0ba 1141 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 1142 { MBEDTLS_TLS_PSK_WITH_CAMELLIA_256_CBC_SHA384, "TLS-PSK-WITH-CAMELLIA-256-CBC-SHA384",
marcozecchini 0:9fca2b23d0ba 1143 MBEDTLS_CIPHER_CAMELLIA_256_CBC, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_PSK,
marcozecchini 0:9fca2b23d0ba 1144 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1145 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1146 0 },
marcozecchini 0:9fca2b23d0ba 1147 #endif /* MBEDTLS_SHA512_C */
marcozecchini 0:9fca2b23d0ba 1148 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 1149
marcozecchini 0:9fca2b23d0ba 1150 #if defined(MBEDTLS_GCM_C)
marcozecchini 0:9fca2b23d0ba 1151 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 1152 { MBEDTLS_TLS_PSK_WITH_CAMELLIA_128_GCM_SHA256, "TLS-PSK-WITH-CAMELLIA-128-GCM-SHA256",
marcozecchini 0:9fca2b23d0ba 1153 MBEDTLS_CIPHER_CAMELLIA_128_GCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_PSK,
marcozecchini 0:9fca2b23d0ba 1154 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1155 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1156 0 },
marcozecchini 0:9fca2b23d0ba 1157 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 1158
marcozecchini 0:9fca2b23d0ba 1159 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 1160 { MBEDTLS_TLS_PSK_WITH_CAMELLIA_256_GCM_SHA384, "TLS-PSK-WITH-CAMELLIA-256-GCM-SHA384",
marcozecchini 0:9fca2b23d0ba 1161 MBEDTLS_CIPHER_CAMELLIA_256_GCM, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_PSK,
marcozecchini 0:9fca2b23d0ba 1162 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1163 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1164 0 },
marcozecchini 0:9fca2b23d0ba 1165 #endif /* MBEDTLS_SHA512_C */
marcozecchini 0:9fca2b23d0ba 1166 #endif /* MBEDTLS_GCM_C */
marcozecchini 0:9fca2b23d0ba 1167 #endif /* MBEDTLS_CAMELLIA_C */
marcozecchini 0:9fca2b23d0ba 1168
marcozecchini 0:9fca2b23d0ba 1169 #if defined(MBEDTLS_DES_C)
marcozecchini 0:9fca2b23d0ba 1170 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 1171 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 1172 { MBEDTLS_TLS_PSK_WITH_3DES_EDE_CBC_SHA, "TLS-PSK-WITH-3DES-EDE-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 1173 MBEDTLS_CIPHER_DES_EDE3_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_PSK,
marcozecchini 0:9fca2b23d0ba 1174 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_0,
marcozecchini 0:9fca2b23d0ba 1175 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1176 0 },
marcozecchini 0:9fca2b23d0ba 1177 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 1178 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 1179 #endif /* MBEDTLS_DES_C */
marcozecchini 0:9fca2b23d0ba 1180
marcozecchini 0:9fca2b23d0ba 1181 #if defined(MBEDTLS_ARC4_C)
marcozecchini 0:9fca2b23d0ba 1182 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 1183 { MBEDTLS_TLS_PSK_WITH_RC4_128_SHA, "TLS-PSK-WITH-RC4-128-SHA",
marcozecchini 0:9fca2b23d0ba 1184 MBEDTLS_CIPHER_ARC4_128, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_PSK,
marcozecchini 0:9fca2b23d0ba 1185 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_0,
marcozecchini 0:9fca2b23d0ba 1186 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1187 MBEDTLS_CIPHERSUITE_NODTLS },
marcozecchini 0:9fca2b23d0ba 1188 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 1189 #endif /* MBEDTLS_ARC4_C */
marcozecchini 0:9fca2b23d0ba 1190 #endif /* MBEDTLS_KEY_EXCHANGE_PSK_ENABLED */
marcozecchini 0:9fca2b23d0ba 1191
marcozecchini 0:9fca2b23d0ba 1192 #if defined(MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED)
marcozecchini 0:9fca2b23d0ba 1193 #if defined(MBEDTLS_AES_C)
marcozecchini 0:9fca2b23d0ba 1194 #if defined(MBEDTLS_GCM_C)
marcozecchini 0:9fca2b23d0ba 1195 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 1196 { MBEDTLS_TLS_DHE_PSK_WITH_AES_128_GCM_SHA256, "TLS-DHE-PSK-WITH-AES-128-GCM-SHA256",
marcozecchini 0:9fca2b23d0ba 1197 MBEDTLS_CIPHER_AES_128_GCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_DHE_PSK,
marcozecchini 0:9fca2b23d0ba 1198 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1199 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1200 0 },
marcozecchini 0:9fca2b23d0ba 1201 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 1202
marcozecchini 0:9fca2b23d0ba 1203 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 1204 { MBEDTLS_TLS_DHE_PSK_WITH_AES_256_GCM_SHA384, "TLS-DHE-PSK-WITH-AES-256-GCM-SHA384",
marcozecchini 0:9fca2b23d0ba 1205 MBEDTLS_CIPHER_AES_256_GCM, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_DHE_PSK,
marcozecchini 0:9fca2b23d0ba 1206 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1207 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1208 0 },
marcozecchini 0:9fca2b23d0ba 1209 #endif /* MBEDTLS_SHA512_C */
marcozecchini 0:9fca2b23d0ba 1210 #endif /* MBEDTLS_GCM_C */
marcozecchini 0:9fca2b23d0ba 1211
marcozecchini 0:9fca2b23d0ba 1212 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 1213 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 1214 { MBEDTLS_TLS_DHE_PSK_WITH_AES_128_CBC_SHA256, "TLS-DHE-PSK-WITH-AES-128-CBC-SHA256",
marcozecchini 0:9fca2b23d0ba 1215 MBEDTLS_CIPHER_AES_128_CBC, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_DHE_PSK,
marcozecchini 0:9fca2b23d0ba 1216 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1217 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1218 0 },
marcozecchini 0:9fca2b23d0ba 1219 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 1220
marcozecchini 0:9fca2b23d0ba 1221 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 1222 { MBEDTLS_TLS_DHE_PSK_WITH_AES_256_CBC_SHA384, "TLS-DHE-PSK-WITH-AES-256-CBC-SHA384",
marcozecchini 0:9fca2b23d0ba 1223 MBEDTLS_CIPHER_AES_256_CBC, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_DHE_PSK,
marcozecchini 0:9fca2b23d0ba 1224 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1225 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1226 0 },
marcozecchini 0:9fca2b23d0ba 1227 #endif /* MBEDTLS_SHA512_C */
marcozecchini 0:9fca2b23d0ba 1228
marcozecchini 0:9fca2b23d0ba 1229 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 1230 { MBEDTLS_TLS_DHE_PSK_WITH_AES_128_CBC_SHA, "TLS-DHE-PSK-WITH-AES-128-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 1231 MBEDTLS_CIPHER_AES_128_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_DHE_PSK,
marcozecchini 0:9fca2b23d0ba 1232 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_0,
marcozecchini 0:9fca2b23d0ba 1233 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1234 0 },
marcozecchini 0:9fca2b23d0ba 1235
marcozecchini 0:9fca2b23d0ba 1236 { MBEDTLS_TLS_DHE_PSK_WITH_AES_256_CBC_SHA, "TLS-DHE-PSK-WITH-AES-256-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 1237 MBEDTLS_CIPHER_AES_256_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_DHE_PSK,
marcozecchini 0:9fca2b23d0ba 1238 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_0,
marcozecchini 0:9fca2b23d0ba 1239 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1240 0 },
marcozecchini 0:9fca2b23d0ba 1241 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 1242 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 1243 #if defined(MBEDTLS_CCM_C)
marcozecchini 0:9fca2b23d0ba 1244 { MBEDTLS_TLS_DHE_PSK_WITH_AES_256_CCM, "TLS-DHE-PSK-WITH-AES-256-CCM",
marcozecchini 0:9fca2b23d0ba 1245 MBEDTLS_CIPHER_AES_256_CCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_DHE_PSK,
marcozecchini 0:9fca2b23d0ba 1246 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1247 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1248 0 },
marcozecchini 0:9fca2b23d0ba 1249 { MBEDTLS_TLS_DHE_PSK_WITH_AES_256_CCM_8, "TLS-DHE-PSK-WITH-AES-256-CCM-8",
marcozecchini 0:9fca2b23d0ba 1250 MBEDTLS_CIPHER_AES_256_CCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_DHE_PSK,
marcozecchini 0:9fca2b23d0ba 1251 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1252 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1253 MBEDTLS_CIPHERSUITE_SHORT_TAG },
marcozecchini 0:9fca2b23d0ba 1254 { MBEDTLS_TLS_DHE_PSK_WITH_AES_128_CCM, "TLS-DHE-PSK-WITH-AES-128-CCM",
marcozecchini 0:9fca2b23d0ba 1255 MBEDTLS_CIPHER_AES_128_CCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_DHE_PSK,
marcozecchini 0:9fca2b23d0ba 1256 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1257 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1258 0 },
marcozecchini 0:9fca2b23d0ba 1259 { MBEDTLS_TLS_DHE_PSK_WITH_AES_128_CCM_8, "TLS-DHE-PSK-WITH-AES-128-CCM-8",
marcozecchini 0:9fca2b23d0ba 1260 MBEDTLS_CIPHER_AES_128_CCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_DHE_PSK,
marcozecchini 0:9fca2b23d0ba 1261 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1262 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1263 MBEDTLS_CIPHERSUITE_SHORT_TAG },
marcozecchini 0:9fca2b23d0ba 1264 #endif /* MBEDTLS_CCM_C */
marcozecchini 0:9fca2b23d0ba 1265 #endif /* MBEDTLS_AES_C */
marcozecchini 0:9fca2b23d0ba 1266
marcozecchini 0:9fca2b23d0ba 1267 #if defined(MBEDTLS_CAMELLIA_C)
marcozecchini 0:9fca2b23d0ba 1268 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 1269 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 1270 { MBEDTLS_TLS_DHE_PSK_WITH_CAMELLIA_128_CBC_SHA256, "TLS-DHE-PSK-WITH-CAMELLIA-128-CBC-SHA256",
marcozecchini 0:9fca2b23d0ba 1271 MBEDTLS_CIPHER_CAMELLIA_128_CBC, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_DHE_PSK,
marcozecchini 0:9fca2b23d0ba 1272 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1273 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1274 0 },
marcozecchini 0:9fca2b23d0ba 1275 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 1276
marcozecchini 0:9fca2b23d0ba 1277 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 1278 { MBEDTLS_TLS_DHE_PSK_WITH_CAMELLIA_256_CBC_SHA384, "TLS-DHE-PSK-WITH-CAMELLIA-256-CBC-SHA384",
marcozecchini 0:9fca2b23d0ba 1279 MBEDTLS_CIPHER_CAMELLIA_256_CBC, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_DHE_PSK,
marcozecchini 0:9fca2b23d0ba 1280 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1281 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1282 0 },
marcozecchini 0:9fca2b23d0ba 1283 #endif /* MBEDTLS_SHA512_C */
marcozecchini 0:9fca2b23d0ba 1284 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 1285
marcozecchini 0:9fca2b23d0ba 1286 #if defined(MBEDTLS_GCM_C)
marcozecchini 0:9fca2b23d0ba 1287 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 1288 { MBEDTLS_TLS_DHE_PSK_WITH_CAMELLIA_128_GCM_SHA256, "TLS-DHE-PSK-WITH-CAMELLIA-128-GCM-SHA256",
marcozecchini 0:9fca2b23d0ba 1289 MBEDTLS_CIPHER_CAMELLIA_128_GCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_DHE_PSK,
marcozecchini 0:9fca2b23d0ba 1290 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1291 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1292 0 },
marcozecchini 0:9fca2b23d0ba 1293 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 1294
marcozecchini 0:9fca2b23d0ba 1295 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 1296 { MBEDTLS_TLS_DHE_PSK_WITH_CAMELLIA_256_GCM_SHA384, "TLS-DHE-PSK-WITH-CAMELLIA-256-GCM-SHA384",
marcozecchini 0:9fca2b23d0ba 1297 MBEDTLS_CIPHER_CAMELLIA_256_GCM, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_DHE_PSK,
marcozecchini 0:9fca2b23d0ba 1298 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1299 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1300 0 },
marcozecchini 0:9fca2b23d0ba 1301 #endif /* MBEDTLS_SHA512_C */
marcozecchini 0:9fca2b23d0ba 1302 #endif /* MBEDTLS_GCM_C */
marcozecchini 0:9fca2b23d0ba 1303 #endif /* MBEDTLS_CAMELLIA_C */
marcozecchini 0:9fca2b23d0ba 1304
marcozecchini 0:9fca2b23d0ba 1305 #if defined(MBEDTLS_DES_C)
marcozecchini 0:9fca2b23d0ba 1306 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 1307 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 1308 { MBEDTLS_TLS_DHE_PSK_WITH_3DES_EDE_CBC_SHA, "TLS-DHE-PSK-WITH-3DES-EDE-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 1309 MBEDTLS_CIPHER_DES_EDE3_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_DHE_PSK,
marcozecchini 0:9fca2b23d0ba 1310 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_0,
marcozecchini 0:9fca2b23d0ba 1311 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1312 0 },
marcozecchini 0:9fca2b23d0ba 1313 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 1314 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 1315 #endif /* MBEDTLS_DES_C */
marcozecchini 0:9fca2b23d0ba 1316
marcozecchini 0:9fca2b23d0ba 1317 #if defined(MBEDTLS_ARC4_C)
marcozecchini 0:9fca2b23d0ba 1318 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 1319 { MBEDTLS_TLS_DHE_PSK_WITH_RC4_128_SHA, "TLS-DHE-PSK-WITH-RC4-128-SHA",
marcozecchini 0:9fca2b23d0ba 1320 MBEDTLS_CIPHER_ARC4_128, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_DHE_PSK,
marcozecchini 0:9fca2b23d0ba 1321 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_0,
marcozecchini 0:9fca2b23d0ba 1322 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1323 MBEDTLS_CIPHERSUITE_NODTLS },
marcozecchini 0:9fca2b23d0ba 1324 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 1325 #endif /* MBEDTLS_ARC4_C */
marcozecchini 0:9fca2b23d0ba 1326 #endif /* MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED */
marcozecchini 0:9fca2b23d0ba 1327
marcozecchini 0:9fca2b23d0ba 1328 #if defined(MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED)
marcozecchini 0:9fca2b23d0ba 1329 #if defined(MBEDTLS_AES_C)
marcozecchini 0:9fca2b23d0ba 1330
marcozecchini 0:9fca2b23d0ba 1331 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 1332 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 1333 { MBEDTLS_TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA256, "TLS-ECDHE-PSK-WITH-AES-128-CBC-SHA256",
marcozecchini 0:9fca2b23d0ba 1334 MBEDTLS_CIPHER_AES_128_CBC, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_ECDHE_PSK,
marcozecchini 0:9fca2b23d0ba 1335 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1336 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1337 0 },
marcozecchini 0:9fca2b23d0ba 1338 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 1339
marcozecchini 0:9fca2b23d0ba 1340 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 1341 { MBEDTLS_TLS_ECDHE_PSK_WITH_AES_256_CBC_SHA384, "TLS-ECDHE-PSK-WITH-AES-256-CBC-SHA384",
marcozecchini 0:9fca2b23d0ba 1342 MBEDTLS_CIPHER_AES_256_CBC, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_ECDHE_PSK,
marcozecchini 0:9fca2b23d0ba 1343 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1344 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1345 0 },
marcozecchini 0:9fca2b23d0ba 1346 #endif /* MBEDTLS_SHA512_C */
marcozecchini 0:9fca2b23d0ba 1347
marcozecchini 0:9fca2b23d0ba 1348 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 1349 { MBEDTLS_TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA, "TLS-ECDHE-PSK-WITH-AES-128-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 1350 MBEDTLS_CIPHER_AES_128_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_ECDHE_PSK,
marcozecchini 0:9fca2b23d0ba 1351 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1352 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1353 0 },
marcozecchini 0:9fca2b23d0ba 1354
marcozecchini 0:9fca2b23d0ba 1355 { MBEDTLS_TLS_ECDHE_PSK_WITH_AES_256_CBC_SHA, "TLS-ECDHE-PSK-WITH-AES-256-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 1356 MBEDTLS_CIPHER_AES_256_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_ECDHE_PSK,
marcozecchini 0:9fca2b23d0ba 1357 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1358 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1359 0 },
marcozecchini 0:9fca2b23d0ba 1360 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 1361 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 1362 #endif /* MBEDTLS_AES_C */
marcozecchini 0:9fca2b23d0ba 1363
marcozecchini 0:9fca2b23d0ba 1364 #if defined(MBEDTLS_CAMELLIA_C)
marcozecchini 0:9fca2b23d0ba 1365 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 1366 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 1367 { MBEDTLS_TLS_ECDHE_PSK_WITH_CAMELLIA_128_CBC_SHA256, "TLS-ECDHE-PSK-WITH-CAMELLIA-128-CBC-SHA256",
marcozecchini 0:9fca2b23d0ba 1368 MBEDTLS_CIPHER_CAMELLIA_128_CBC, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_ECDHE_PSK,
marcozecchini 0:9fca2b23d0ba 1369 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1370 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1371 0 },
marcozecchini 0:9fca2b23d0ba 1372 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 1373
marcozecchini 0:9fca2b23d0ba 1374 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 1375 { MBEDTLS_TLS_ECDHE_PSK_WITH_CAMELLIA_256_CBC_SHA384, "TLS-ECDHE-PSK-WITH-CAMELLIA-256-CBC-SHA384",
marcozecchini 0:9fca2b23d0ba 1376 MBEDTLS_CIPHER_CAMELLIA_256_CBC, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_ECDHE_PSK,
marcozecchini 0:9fca2b23d0ba 1377 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1378 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1379 0 },
marcozecchini 0:9fca2b23d0ba 1380 #endif /* MBEDTLS_SHA512_C */
marcozecchini 0:9fca2b23d0ba 1381 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 1382 #endif /* MBEDTLS_CAMELLIA_C */
marcozecchini 0:9fca2b23d0ba 1383
marcozecchini 0:9fca2b23d0ba 1384 #if defined(MBEDTLS_DES_C)
marcozecchini 0:9fca2b23d0ba 1385 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 1386 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 1387 { MBEDTLS_TLS_ECDHE_PSK_WITH_3DES_EDE_CBC_SHA, "TLS-ECDHE-PSK-WITH-3DES-EDE-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 1388 MBEDTLS_CIPHER_DES_EDE3_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_ECDHE_PSK,
marcozecchini 0:9fca2b23d0ba 1389 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1390 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1391 0 },
marcozecchini 0:9fca2b23d0ba 1392 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 1393 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 1394 #endif /* MBEDTLS_DES_C */
marcozecchini 0:9fca2b23d0ba 1395
marcozecchini 0:9fca2b23d0ba 1396 #if defined(MBEDTLS_ARC4_C)
marcozecchini 0:9fca2b23d0ba 1397 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 1398 { MBEDTLS_TLS_ECDHE_PSK_WITH_RC4_128_SHA, "TLS-ECDHE-PSK-WITH-RC4-128-SHA",
marcozecchini 0:9fca2b23d0ba 1399 MBEDTLS_CIPHER_ARC4_128, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_ECDHE_PSK,
marcozecchini 0:9fca2b23d0ba 1400 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1401 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1402 MBEDTLS_CIPHERSUITE_NODTLS },
marcozecchini 0:9fca2b23d0ba 1403 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 1404 #endif /* MBEDTLS_ARC4_C */
marcozecchini 0:9fca2b23d0ba 1405 #endif /* MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED */
marcozecchini 0:9fca2b23d0ba 1406
marcozecchini 0:9fca2b23d0ba 1407 #if defined(MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED)
marcozecchini 0:9fca2b23d0ba 1408 #if defined(MBEDTLS_AES_C)
marcozecchini 0:9fca2b23d0ba 1409 #if defined(MBEDTLS_GCM_C)
marcozecchini 0:9fca2b23d0ba 1410 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 1411 { MBEDTLS_TLS_RSA_PSK_WITH_AES_128_GCM_SHA256, "TLS-RSA-PSK-WITH-AES-128-GCM-SHA256",
marcozecchini 0:9fca2b23d0ba 1412 MBEDTLS_CIPHER_AES_128_GCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
marcozecchini 0:9fca2b23d0ba 1413 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1414 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1415 0 },
marcozecchini 0:9fca2b23d0ba 1416 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 1417
marcozecchini 0:9fca2b23d0ba 1418 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 1419 { MBEDTLS_TLS_RSA_PSK_WITH_AES_256_GCM_SHA384, "TLS-RSA-PSK-WITH-AES-256-GCM-SHA384",
marcozecchini 0:9fca2b23d0ba 1420 MBEDTLS_CIPHER_AES_256_GCM, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
marcozecchini 0:9fca2b23d0ba 1421 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1422 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1423 0 },
marcozecchini 0:9fca2b23d0ba 1424 #endif /* MBEDTLS_SHA512_C */
marcozecchini 0:9fca2b23d0ba 1425 #endif /* MBEDTLS_GCM_C */
marcozecchini 0:9fca2b23d0ba 1426
marcozecchini 0:9fca2b23d0ba 1427 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 1428 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 1429 { MBEDTLS_TLS_RSA_PSK_WITH_AES_128_CBC_SHA256, "TLS-RSA-PSK-WITH-AES-128-CBC-SHA256",
marcozecchini 0:9fca2b23d0ba 1430 MBEDTLS_CIPHER_AES_128_CBC, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
marcozecchini 0:9fca2b23d0ba 1431 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1432 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1433 0 },
marcozecchini 0:9fca2b23d0ba 1434 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 1435
marcozecchini 0:9fca2b23d0ba 1436 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 1437 { MBEDTLS_TLS_RSA_PSK_WITH_AES_256_CBC_SHA384, "TLS-RSA-PSK-WITH-AES-256-CBC-SHA384",
marcozecchini 0:9fca2b23d0ba 1438 MBEDTLS_CIPHER_AES_256_CBC, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
marcozecchini 0:9fca2b23d0ba 1439 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1440 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1441 0 },
marcozecchini 0:9fca2b23d0ba 1442 #endif /* MBEDTLS_SHA512_C */
marcozecchini 0:9fca2b23d0ba 1443
marcozecchini 0:9fca2b23d0ba 1444 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 1445 { MBEDTLS_TLS_RSA_PSK_WITH_AES_128_CBC_SHA, "TLS-RSA-PSK-WITH-AES-128-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 1446 MBEDTLS_CIPHER_AES_128_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
marcozecchini 0:9fca2b23d0ba 1447 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1448 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1449 0 },
marcozecchini 0:9fca2b23d0ba 1450
marcozecchini 0:9fca2b23d0ba 1451 { MBEDTLS_TLS_RSA_PSK_WITH_AES_256_CBC_SHA, "TLS-RSA-PSK-WITH-AES-256-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 1452 MBEDTLS_CIPHER_AES_256_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
marcozecchini 0:9fca2b23d0ba 1453 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1454 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1455 0 },
marcozecchini 0:9fca2b23d0ba 1456 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 1457 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 1458 #endif /* MBEDTLS_AES_C */
marcozecchini 0:9fca2b23d0ba 1459
marcozecchini 0:9fca2b23d0ba 1460 #if defined(MBEDTLS_CAMELLIA_C)
marcozecchini 0:9fca2b23d0ba 1461 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 1462 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 1463 { MBEDTLS_TLS_RSA_PSK_WITH_CAMELLIA_128_CBC_SHA256, "TLS-RSA-PSK-WITH-CAMELLIA-128-CBC-SHA256",
marcozecchini 0:9fca2b23d0ba 1464 MBEDTLS_CIPHER_CAMELLIA_128_CBC, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
marcozecchini 0:9fca2b23d0ba 1465 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1466 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1467 0 },
marcozecchini 0:9fca2b23d0ba 1468 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 1469
marcozecchini 0:9fca2b23d0ba 1470 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 1471 { MBEDTLS_TLS_RSA_PSK_WITH_CAMELLIA_256_CBC_SHA384, "TLS-RSA-PSK-WITH-CAMELLIA-256-CBC-SHA384",
marcozecchini 0:9fca2b23d0ba 1472 MBEDTLS_CIPHER_CAMELLIA_256_CBC, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
marcozecchini 0:9fca2b23d0ba 1473 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1474 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1475 0 },
marcozecchini 0:9fca2b23d0ba 1476 #endif /* MBEDTLS_SHA512_C */
marcozecchini 0:9fca2b23d0ba 1477 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 1478
marcozecchini 0:9fca2b23d0ba 1479 #if defined(MBEDTLS_GCM_C)
marcozecchini 0:9fca2b23d0ba 1480 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 1481 { MBEDTLS_TLS_RSA_PSK_WITH_CAMELLIA_128_GCM_SHA256, "TLS-RSA-PSK-WITH-CAMELLIA-128-GCM-SHA256",
marcozecchini 0:9fca2b23d0ba 1482 MBEDTLS_CIPHER_CAMELLIA_128_GCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
marcozecchini 0:9fca2b23d0ba 1483 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1484 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1485 0 },
marcozecchini 0:9fca2b23d0ba 1486 #endif /* MBEDTLS_SHA256_C */
marcozecchini 0:9fca2b23d0ba 1487
marcozecchini 0:9fca2b23d0ba 1488 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 1489 { MBEDTLS_TLS_RSA_PSK_WITH_CAMELLIA_256_GCM_SHA384, "TLS-RSA-PSK-WITH-CAMELLIA-256-GCM-SHA384",
marcozecchini 0:9fca2b23d0ba 1490 MBEDTLS_CIPHER_CAMELLIA_256_GCM, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
marcozecchini 0:9fca2b23d0ba 1491 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1492 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1493 0 },
marcozecchini 0:9fca2b23d0ba 1494 #endif /* MBEDTLS_SHA512_C */
marcozecchini 0:9fca2b23d0ba 1495 #endif /* MBEDTLS_GCM_C */
marcozecchini 0:9fca2b23d0ba 1496 #endif /* MBEDTLS_CAMELLIA_C */
marcozecchini 0:9fca2b23d0ba 1497
marcozecchini 0:9fca2b23d0ba 1498 #if defined(MBEDTLS_DES_C)
marcozecchini 0:9fca2b23d0ba 1499 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 1500 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 1501 { MBEDTLS_TLS_RSA_PSK_WITH_3DES_EDE_CBC_SHA, "TLS-RSA-PSK-WITH-3DES-EDE-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 1502 MBEDTLS_CIPHER_DES_EDE3_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
marcozecchini 0:9fca2b23d0ba 1503 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1504 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1505 0 },
marcozecchini 0:9fca2b23d0ba 1506 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 1507 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 1508 #endif /* MBEDTLS_DES_C */
marcozecchini 0:9fca2b23d0ba 1509
marcozecchini 0:9fca2b23d0ba 1510 #if defined(MBEDTLS_ARC4_C)
marcozecchini 0:9fca2b23d0ba 1511 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 1512 { MBEDTLS_TLS_RSA_PSK_WITH_RC4_128_SHA, "TLS-RSA-PSK-WITH-RC4-128-SHA",
marcozecchini 0:9fca2b23d0ba 1513 MBEDTLS_CIPHER_ARC4_128, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
marcozecchini 0:9fca2b23d0ba 1514 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1515 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1516 MBEDTLS_CIPHERSUITE_NODTLS },
marcozecchini 0:9fca2b23d0ba 1517 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 1518 #endif /* MBEDTLS_ARC4_C */
marcozecchini 0:9fca2b23d0ba 1519 #endif /* MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED */
marcozecchini 0:9fca2b23d0ba 1520
marcozecchini 0:9fca2b23d0ba 1521 #if defined(MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED)
marcozecchini 0:9fca2b23d0ba 1522 #if defined(MBEDTLS_AES_C)
marcozecchini 0:9fca2b23d0ba 1523 #if defined(MBEDTLS_CCM_C)
marcozecchini 0:9fca2b23d0ba 1524 { MBEDTLS_TLS_ECJPAKE_WITH_AES_128_CCM_8, "TLS-ECJPAKE-WITH-AES-128-CCM-8",
marcozecchini 0:9fca2b23d0ba 1525 MBEDTLS_CIPHER_AES_128_CCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_ECJPAKE,
marcozecchini 0:9fca2b23d0ba 1526 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1527 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1528 MBEDTLS_CIPHERSUITE_SHORT_TAG },
marcozecchini 0:9fca2b23d0ba 1529 #endif /* MBEDTLS_CCM_C */
marcozecchini 0:9fca2b23d0ba 1530 #endif /* MBEDTLS_AES_C */
marcozecchini 0:9fca2b23d0ba 1531 #endif /* MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED */
marcozecchini 0:9fca2b23d0ba 1532
marcozecchini 0:9fca2b23d0ba 1533 #if defined(MBEDTLS_ENABLE_WEAK_CIPHERSUITES)
marcozecchini 0:9fca2b23d0ba 1534 #if defined(MBEDTLS_CIPHER_NULL_CIPHER)
marcozecchini 0:9fca2b23d0ba 1535 #if defined(MBEDTLS_KEY_EXCHANGE_RSA_ENABLED)
marcozecchini 0:9fca2b23d0ba 1536 #if defined(MBEDTLS_MD5_C)
marcozecchini 0:9fca2b23d0ba 1537 { MBEDTLS_TLS_RSA_WITH_NULL_MD5, "TLS-RSA-WITH-NULL-MD5",
marcozecchini 0:9fca2b23d0ba 1538 MBEDTLS_CIPHER_NULL, MBEDTLS_MD_MD5, MBEDTLS_KEY_EXCHANGE_RSA,
marcozecchini 0:9fca2b23d0ba 1539 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_0,
marcozecchini 0:9fca2b23d0ba 1540 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1541 MBEDTLS_CIPHERSUITE_WEAK },
marcozecchini 0:9fca2b23d0ba 1542 #endif
marcozecchini 0:9fca2b23d0ba 1543
marcozecchini 0:9fca2b23d0ba 1544 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 1545 { MBEDTLS_TLS_RSA_WITH_NULL_SHA, "TLS-RSA-WITH-NULL-SHA",
marcozecchini 0:9fca2b23d0ba 1546 MBEDTLS_CIPHER_NULL, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_RSA,
marcozecchini 0:9fca2b23d0ba 1547 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_0,
marcozecchini 0:9fca2b23d0ba 1548 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1549 MBEDTLS_CIPHERSUITE_WEAK },
marcozecchini 0:9fca2b23d0ba 1550 #endif
marcozecchini 0:9fca2b23d0ba 1551
marcozecchini 0:9fca2b23d0ba 1552 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 1553 { MBEDTLS_TLS_RSA_WITH_NULL_SHA256, "TLS-RSA-WITH-NULL-SHA256",
marcozecchini 0:9fca2b23d0ba 1554 MBEDTLS_CIPHER_NULL, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_RSA,
marcozecchini 0:9fca2b23d0ba 1555 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1556 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1557 MBEDTLS_CIPHERSUITE_WEAK },
marcozecchini 0:9fca2b23d0ba 1558 #endif
marcozecchini 0:9fca2b23d0ba 1559 #endif /* MBEDTLS_KEY_EXCHANGE_RSA_ENABLED */
marcozecchini 0:9fca2b23d0ba 1560
marcozecchini 0:9fca2b23d0ba 1561 #if defined(MBEDTLS_KEY_EXCHANGE_PSK_ENABLED)
marcozecchini 0:9fca2b23d0ba 1562 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 1563 { MBEDTLS_TLS_PSK_WITH_NULL_SHA, "TLS-PSK-WITH-NULL-SHA",
marcozecchini 0:9fca2b23d0ba 1564 MBEDTLS_CIPHER_NULL, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_PSK,
marcozecchini 0:9fca2b23d0ba 1565 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_0,
marcozecchini 0:9fca2b23d0ba 1566 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1567 MBEDTLS_CIPHERSUITE_WEAK },
marcozecchini 0:9fca2b23d0ba 1568 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 1569
marcozecchini 0:9fca2b23d0ba 1570 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 1571 { MBEDTLS_TLS_PSK_WITH_NULL_SHA256, "TLS-PSK-WITH-NULL-SHA256",
marcozecchini 0:9fca2b23d0ba 1572 MBEDTLS_CIPHER_NULL, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_PSK,
marcozecchini 0:9fca2b23d0ba 1573 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1574 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1575 MBEDTLS_CIPHERSUITE_WEAK },
marcozecchini 0:9fca2b23d0ba 1576 #endif
marcozecchini 0:9fca2b23d0ba 1577
marcozecchini 0:9fca2b23d0ba 1578 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 1579 { MBEDTLS_TLS_PSK_WITH_NULL_SHA384, "TLS-PSK-WITH-NULL-SHA384",
marcozecchini 0:9fca2b23d0ba 1580 MBEDTLS_CIPHER_NULL, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_PSK,
marcozecchini 0:9fca2b23d0ba 1581 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1582 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1583 MBEDTLS_CIPHERSUITE_WEAK },
marcozecchini 0:9fca2b23d0ba 1584 #endif
marcozecchini 0:9fca2b23d0ba 1585 #endif /* MBEDTLS_KEY_EXCHANGE_PSK_ENABLED */
marcozecchini 0:9fca2b23d0ba 1586
marcozecchini 0:9fca2b23d0ba 1587 #if defined(MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED)
marcozecchini 0:9fca2b23d0ba 1588 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 1589 { MBEDTLS_TLS_DHE_PSK_WITH_NULL_SHA, "TLS-DHE-PSK-WITH-NULL-SHA",
marcozecchini 0:9fca2b23d0ba 1590 MBEDTLS_CIPHER_NULL, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_DHE_PSK,
marcozecchini 0:9fca2b23d0ba 1591 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_0,
marcozecchini 0:9fca2b23d0ba 1592 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1593 MBEDTLS_CIPHERSUITE_WEAK },
marcozecchini 0:9fca2b23d0ba 1594 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 1595
marcozecchini 0:9fca2b23d0ba 1596 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 1597 { MBEDTLS_TLS_DHE_PSK_WITH_NULL_SHA256, "TLS-DHE-PSK-WITH-NULL-SHA256",
marcozecchini 0:9fca2b23d0ba 1598 MBEDTLS_CIPHER_NULL, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_DHE_PSK,
marcozecchini 0:9fca2b23d0ba 1599 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1600 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1601 MBEDTLS_CIPHERSUITE_WEAK },
marcozecchini 0:9fca2b23d0ba 1602 #endif
marcozecchini 0:9fca2b23d0ba 1603
marcozecchini 0:9fca2b23d0ba 1604 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 1605 { MBEDTLS_TLS_DHE_PSK_WITH_NULL_SHA384, "TLS-DHE-PSK-WITH-NULL-SHA384",
marcozecchini 0:9fca2b23d0ba 1606 MBEDTLS_CIPHER_NULL, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_DHE_PSK,
marcozecchini 0:9fca2b23d0ba 1607 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1608 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1609 MBEDTLS_CIPHERSUITE_WEAK },
marcozecchini 0:9fca2b23d0ba 1610 #endif
marcozecchini 0:9fca2b23d0ba 1611 #endif /* MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED */
marcozecchini 0:9fca2b23d0ba 1612
marcozecchini 0:9fca2b23d0ba 1613 #if defined(MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED)
marcozecchini 0:9fca2b23d0ba 1614 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 1615 { MBEDTLS_TLS_ECDHE_PSK_WITH_NULL_SHA, "TLS-ECDHE-PSK-WITH-NULL-SHA",
marcozecchini 0:9fca2b23d0ba 1616 MBEDTLS_CIPHER_NULL, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_ECDHE_PSK,
marcozecchini 0:9fca2b23d0ba 1617 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1618 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1619 MBEDTLS_CIPHERSUITE_WEAK },
marcozecchini 0:9fca2b23d0ba 1620 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 1621
marcozecchini 0:9fca2b23d0ba 1622 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 1623 { MBEDTLS_TLS_ECDHE_PSK_WITH_NULL_SHA256, "TLS-ECDHE-PSK-WITH-NULL-SHA256",
marcozecchini 0:9fca2b23d0ba 1624 MBEDTLS_CIPHER_NULL, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_ECDHE_PSK,
marcozecchini 0:9fca2b23d0ba 1625 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1626 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1627 MBEDTLS_CIPHERSUITE_WEAK },
marcozecchini 0:9fca2b23d0ba 1628 #endif
marcozecchini 0:9fca2b23d0ba 1629
marcozecchini 0:9fca2b23d0ba 1630 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 1631 { MBEDTLS_TLS_ECDHE_PSK_WITH_NULL_SHA384, "TLS-ECDHE-PSK-WITH-NULL-SHA384",
marcozecchini 0:9fca2b23d0ba 1632 MBEDTLS_CIPHER_NULL, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_ECDHE_PSK,
marcozecchini 0:9fca2b23d0ba 1633 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1634 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1635 MBEDTLS_CIPHERSUITE_WEAK },
marcozecchini 0:9fca2b23d0ba 1636 #endif
marcozecchini 0:9fca2b23d0ba 1637 #endif /* MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED */
marcozecchini 0:9fca2b23d0ba 1638
marcozecchini 0:9fca2b23d0ba 1639 #if defined(MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED)
marcozecchini 0:9fca2b23d0ba 1640 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 1641 { MBEDTLS_TLS_RSA_PSK_WITH_NULL_SHA, "TLS-RSA-PSK-WITH-NULL-SHA",
marcozecchini 0:9fca2b23d0ba 1642 MBEDTLS_CIPHER_NULL, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
marcozecchini 0:9fca2b23d0ba 1643 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1644 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1645 MBEDTLS_CIPHERSUITE_WEAK },
marcozecchini 0:9fca2b23d0ba 1646 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 1647
marcozecchini 0:9fca2b23d0ba 1648 #if defined(MBEDTLS_SHA256_C)
marcozecchini 0:9fca2b23d0ba 1649 { MBEDTLS_TLS_RSA_PSK_WITH_NULL_SHA256, "TLS-RSA-PSK-WITH-NULL-SHA256",
marcozecchini 0:9fca2b23d0ba 1650 MBEDTLS_CIPHER_NULL, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
marcozecchini 0:9fca2b23d0ba 1651 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1652 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1653 MBEDTLS_CIPHERSUITE_WEAK },
marcozecchini 0:9fca2b23d0ba 1654 #endif
marcozecchini 0:9fca2b23d0ba 1655
marcozecchini 0:9fca2b23d0ba 1656 #if defined(MBEDTLS_SHA512_C)
marcozecchini 0:9fca2b23d0ba 1657 { MBEDTLS_TLS_RSA_PSK_WITH_NULL_SHA384, "TLS-RSA-PSK-WITH-NULL-SHA384",
marcozecchini 0:9fca2b23d0ba 1658 MBEDTLS_CIPHER_NULL, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
marcozecchini 0:9fca2b23d0ba 1659 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1,
marcozecchini 0:9fca2b23d0ba 1660 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1661 MBEDTLS_CIPHERSUITE_WEAK },
marcozecchini 0:9fca2b23d0ba 1662 #endif
marcozecchini 0:9fca2b23d0ba 1663 #endif /* MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED */
marcozecchini 0:9fca2b23d0ba 1664 #endif /* MBEDTLS_CIPHER_NULL_CIPHER */
marcozecchini 0:9fca2b23d0ba 1665
marcozecchini 0:9fca2b23d0ba 1666 #if defined(MBEDTLS_DES_C)
marcozecchini 0:9fca2b23d0ba 1667 #if defined(MBEDTLS_CIPHER_MODE_CBC)
marcozecchini 0:9fca2b23d0ba 1668 #if defined(MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED)
marcozecchini 0:9fca2b23d0ba 1669 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 1670 { MBEDTLS_TLS_DHE_RSA_WITH_DES_CBC_SHA, "TLS-DHE-RSA-WITH-DES-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 1671 MBEDTLS_CIPHER_DES_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_DHE_RSA,
marcozecchini 0:9fca2b23d0ba 1672 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_0,
marcozecchini 0:9fca2b23d0ba 1673 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1674 MBEDTLS_CIPHERSUITE_WEAK },
marcozecchini 0:9fca2b23d0ba 1675 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 1676 #endif /* MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED */
marcozecchini 0:9fca2b23d0ba 1677
marcozecchini 0:9fca2b23d0ba 1678 #if defined(MBEDTLS_KEY_EXCHANGE_RSA_ENABLED)
marcozecchini 0:9fca2b23d0ba 1679 #if defined(MBEDTLS_SHA1_C)
marcozecchini 0:9fca2b23d0ba 1680 { MBEDTLS_TLS_RSA_WITH_DES_CBC_SHA, "TLS-RSA-WITH-DES-CBC-SHA",
marcozecchini 0:9fca2b23d0ba 1681 MBEDTLS_CIPHER_DES_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_RSA,
marcozecchini 0:9fca2b23d0ba 1682 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_0,
marcozecchini 0:9fca2b23d0ba 1683 MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3,
marcozecchini 0:9fca2b23d0ba 1684 MBEDTLS_CIPHERSUITE_WEAK },
marcozecchini 0:9fca2b23d0ba 1685 #endif /* MBEDTLS_SHA1_C */
marcozecchini 0:9fca2b23d0ba 1686 #endif /* MBEDTLS_KEY_EXCHANGE_RSA_ENABLED */
marcozecchini 0:9fca2b23d0ba 1687 #endif /* MBEDTLS_CIPHER_MODE_CBC */
marcozecchini 0:9fca2b23d0ba 1688 #endif /* MBEDTLS_DES_C */
marcozecchini 0:9fca2b23d0ba 1689 #endif /* MBEDTLS_ENABLE_WEAK_CIPHERSUITES */
marcozecchini 0:9fca2b23d0ba 1690
marcozecchini 0:9fca2b23d0ba 1691 { 0, "",
marcozecchini 0:9fca2b23d0ba 1692 MBEDTLS_CIPHER_NONE, MBEDTLS_MD_NONE, MBEDTLS_KEY_EXCHANGE_NONE,
marcozecchini 0:9fca2b23d0ba 1693 0, 0, 0, 0, 0 }
marcozecchini 0:9fca2b23d0ba 1694 };
marcozecchini 0:9fca2b23d0ba 1695
marcozecchini 0:9fca2b23d0ba 1696 #if defined(MBEDTLS_SSL_CIPHERSUITES)
marcozecchini 0:9fca2b23d0ba 1697 const int *mbedtls_ssl_list_ciphersuites( void )
marcozecchini 0:9fca2b23d0ba 1698 {
marcozecchini 0:9fca2b23d0ba 1699 return( ciphersuite_preference );
marcozecchini 0:9fca2b23d0ba 1700 }
marcozecchini 0:9fca2b23d0ba 1701 #else
marcozecchini 0:9fca2b23d0ba 1702 #define MAX_CIPHERSUITES sizeof( ciphersuite_definitions ) / \
marcozecchini 0:9fca2b23d0ba 1703 sizeof( ciphersuite_definitions[0] )
marcozecchini 0:9fca2b23d0ba 1704 static int supported_ciphersuites[MAX_CIPHERSUITES];
marcozecchini 0:9fca2b23d0ba 1705 static int supported_init = 0;
marcozecchini 0:9fca2b23d0ba 1706
marcozecchini 0:9fca2b23d0ba 1707 const int *mbedtls_ssl_list_ciphersuites( void )
marcozecchini 0:9fca2b23d0ba 1708 {
marcozecchini 0:9fca2b23d0ba 1709 /*
marcozecchini 0:9fca2b23d0ba 1710 * On initial call filter out all ciphersuites not supported by current
marcozecchini 0:9fca2b23d0ba 1711 * build based on presence in the ciphersuite_definitions.
marcozecchini 0:9fca2b23d0ba 1712 */
marcozecchini 0:9fca2b23d0ba 1713 if( supported_init == 0 )
marcozecchini 0:9fca2b23d0ba 1714 {
marcozecchini 0:9fca2b23d0ba 1715 const int *p;
marcozecchini 0:9fca2b23d0ba 1716 int *q;
marcozecchini 0:9fca2b23d0ba 1717
marcozecchini 0:9fca2b23d0ba 1718 for( p = ciphersuite_preference, q = supported_ciphersuites;
marcozecchini 0:9fca2b23d0ba 1719 *p != 0 && q < supported_ciphersuites + MAX_CIPHERSUITES - 1;
marcozecchini 0:9fca2b23d0ba 1720 p++ )
marcozecchini 0:9fca2b23d0ba 1721 {
marcozecchini 0:9fca2b23d0ba 1722 #if defined(MBEDTLS_REMOVE_ARC4_CIPHERSUITES)
marcozecchini 0:9fca2b23d0ba 1723 const mbedtls_ssl_ciphersuite_t *cs_info;
marcozecchini 0:9fca2b23d0ba 1724 if( ( cs_info = mbedtls_ssl_ciphersuite_from_id( *p ) ) != NULL &&
marcozecchini 0:9fca2b23d0ba 1725 cs_info->cipher != MBEDTLS_CIPHER_ARC4_128 )
marcozecchini 0:9fca2b23d0ba 1726 #else
marcozecchini 0:9fca2b23d0ba 1727 if( mbedtls_ssl_ciphersuite_from_id( *p ) != NULL )
marcozecchini 0:9fca2b23d0ba 1728 #endif
marcozecchini 0:9fca2b23d0ba 1729 *(q++) = *p;
marcozecchini 0:9fca2b23d0ba 1730 }
marcozecchini 0:9fca2b23d0ba 1731 *q = 0;
marcozecchini 0:9fca2b23d0ba 1732
marcozecchini 0:9fca2b23d0ba 1733 supported_init = 1;
marcozecchini 0:9fca2b23d0ba 1734 }
marcozecchini 0:9fca2b23d0ba 1735
marcozecchini 0:9fca2b23d0ba 1736 return( supported_ciphersuites );
marcozecchini 0:9fca2b23d0ba 1737 }
marcozecchini 0:9fca2b23d0ba 1738 #endif /* MBEDTLS_SSL_CIPHERSUITES */
marcozecchini 0:9fca2b23d0ba 1739
marcozecchini 0:9fca2b23d0ba 1740 const mbedtls_ssl_ciphersuite_t *mbedtls_ssl_ciphersuite_from_string(
marcozecchini 0:9fca2b23d0ba 1741 const char *ciphersuite_name )
marcozecchini 0:9fca2b23d0ba 1742 {
marcozecchini 0:9fca2b23d0ba 1743 const mbedtls_ssl_ciphersuite_t *cur = ciphersuite_definitions;
marcozecchini 0:9fca2b23d0ba 1744
marcozecchini 0:9fca2b23d0ba 1745 if( NULL == ciphersuite_name )
marcozecchini 0:9fca2b23d0ba 1746 return( NULL );
marcozecchini 0:9fca2b23d0ba 1747
marcozecchini 0:9fca2b23d0ba 1748 while( cur->id != 0 )
marcozecchini 0:9fca2b23d0ba 1749 {
marcozecchini 0:9fca2b23d0ba 1750 if( 0 == strcmp( cur->name, ciphersuite_name ) )
marcozecchini 0:9fca2b23d0ba 1751 return( cur );
marcozecchini 0:9fca2b23d0ba 1752
marcozecchini 0:9fca2b23d0ba 1753 cur++;
marcozecchini 0:9fca2b23d0ba 1754 }
marcozecchini 0:9fca2b23d0ba 1755
marcozecchini 0:9fca2b23d0ba 1756 return( NULL );
marcozecchini 0:9fca2b23d0ba 1757 }
marcozecchini 0:9fca2b23d0ba 1758
marcozecchini 0:9fca2b23d0ba 1759 const mbedtls_ssl_ciphersuite_t *mbedtls_ssl_ciphersuite_from_id( int ciphersuite )
marcozecchini 0:9fca2b23d0ba 1760 {
marcozecchini 0:9fca2b23d0ba 1761 const mbedtls_ssl_ciphersuite_t *cur = ciphersuite_definitions;
marcozecchini 0:9fca2b23d0ba 1762
marcozecchini 0:9fca2b23d0ba 1763 while( cur->id != 0 )
marcozecchini 0:9fca2b23d0ba 1764 {
marcozecchini 0:9fca2b23d0ba 1765 if( cur->id == ciphersuite )
marcozecchini 0:9fca2b23d0ba 1766 return( cur );
marcozecchini 0:9fca2b23d0ba 1767
marcozecchini 0:9fca2b23d0ba 1768 cur++;
marcozecchini 0:9fca2b23d0ba 1769 }
marcozecchini 0:9fca2b23d0ba 1770
marcozecchini 0:9fca2b23d0ba 1771 return( NULL );
marcozecchini 0:9fca2b23d0ba 1772 }
marcozecchini 0:9fca2b23d0ba 1773
marcozecchini 0:9fca2b23d0ba 1774 const char *mbedtls_ssl_get_ciphersuite_name( const int ciphersuite_id )
marcozecchini 0:9fca2b23d0ba 1775 {
marcozecchini 0:9fca2b23d0ba 1776 const mbedtls_ssl_ciphersuite_t *cur;
marcozecchini 0:9fca2b23d0ba 1777
marcozecchini 0:9fca2b23d0ba 1778 cur = mbedtls_ssl_ciphersuite_from_id( ciphersuite_id );
marcozecchini 0:9fca2b23d0ba 1779
marcozecchini 0:9fca2b23d0ba 1780 if( cur == NULL )
marcozecchini 0:9fca2b23d0ba 1781 return( "unknown" );
marcozecchini 0:9fca2b23d0ba 1782
marcozecchini 0:9fca2b23d0ba 1783 return( cur->name );
marcozecchini 0:9fca2b23d0ba 1784 }
marcozecchini 0:9fca2b23d0ba 1785
marcozecchini 0:9fca2b23d0ba 1786 int mbedtls_ssl_get_ciphersuite_id( const char *ciphersuite_name )
marcozecchini 0:9fca2b23d0ba 1787 {
marcozecchini 0:9fca2b23d0ba 1788 const mbedtls_ssl_ciphersuite_t *cur;
marcozecchini 0:9fca2b23d0ba 1789
marcozecchini 0:9fca2b23d0ba 1790 cur = mbedtls_ssl_ciphersuite_from_string( ciphersuite_name );
marcozecchini 0:9fca2b23d0ba 1791
marcozecchini 0:9fca2b23d0ba 1792 if( cur == NULL )
marcozecchini 0:9fca2b23d0ba 1793 return( 0 );
marcozecchini 0:9fca2b23d0ba 1794
marcozecchini 0:9fca2b23d0ba 1795 return( cur->id );
marcozecchini 0:9fca2b23d0ba 1796 }
marcozecchini 0:9fca2b23d0ba 1797
marcozecchini 0:9fca2b23d0ba 1798 #if defined(MBEDTLS_PK_C)
marcozecchini 0:9fca2b23d0ba 1799 mbedtls_pk_type_t mbedtls_ssl_get_ciphersuite_sig_pk_alg( const mbedtls_ssl_ciphersuite_t *info )
marcozecchini 0:9fca2b23d0ba 1800 {
marcozecchini 0:9fca2b23d0ba 1801 switch( info->key_exchange )
marcozecchini 0:9fca2b23d0ba 1802 {
marcozecchini 0:9fca2b23d0ba 1803 case MBEDTLS_KEY_EXCHANGE_RSA:
marcozecchini 0:9fca2b23d0ba 1804 case MBEDTLS_KEY_EXCHANGE_DHE_RSA:
marcozecchini 0:9fca2b23d0ba 1805 case MBEDTLS_KEY_EXCHANGE_ECDHE_RSA:
marcozecchini 0:9fca2b23d0ba 1806 case MBEDTLS_KEY_EXCHANGE_RSA_PSK:
marcozecchini 0:9fca2b23d0ba 1807 return( MBEDTLS_PK_RSA );
marcozecchini 0:9fca2b23d0ba 1808
marcozecchini 0:9fca2b23d0ba 1809 case MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA:
marcozecchini 0:9fca2b23d0ba 1810 return( MBEDTLS_PK_ECDSA );
marcozecchini 0:9fca2b23d0ba 1811
marcozecchini 0:9fca2b23d0ba 1812 case MBEDTLS_KEY_EXCHANGE_ECDH_RSA:
marcozecchini 0:9fca2b23d0ba 1813 case MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA:
marcozecchini 0:9fca2b23d0ba 1814 return( MBEDTLS_PK_ECKEY );
marcozecchini 0:9fca2b23d0ba 1815
marcozecchini 0:9fca2b23d0ba 1816 default:
marcozecchini 0:9fca2b23d0ba 1817 return( MBEDTLS_PK_NONE );
marcozecchini 0:9fca2b23d0ba 1818 }
marcozecchini 0:9fca2b23d0ba 1819 }
marcozecchini 0:9fca2b23d0ba 1820
marcozecchini 0:9fca2b23d0ba 1821 mbedtls_pk_type_t mbedtls_ssl_get_ciphersuite_sig_alg( const mbedtls_ssl_ciphersuite_t *info )
marcozecchini 0:9fca2b23d0ba 1822 {
marcozecchini 0:9fca2b23d0ba 1823 switch( info->key_exchange )
marcozecchini 0:9fca2b23d0ba 1824 {
marcozecchini 0:9fca2b23d0ba 1825 case MBEDTLS_KEY_EXCHANGE_RSA:
marcozecchini 0:9fca2b23d0ba 1826 case MBEDTLS_KEY_EXCHANGE_DHE_RSA:
marcozecchini 0:9fca2b23d0ba 1827 case MBEDTLS_KEY_EXCHANGE_ECDHE_RSA:
marcozecchini 0:9fca2b23d0ba 1828 return( MBEDTLS_PK_RSA );
marcozecchini 0:9fca2b23d0ba 1829
marcozecchini 0:9fca2b23d0ba 1830 case MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA:
marcozecchini 0:9fca2b23d0ba 1831 return( MBEDTLS_PK_ECDSA );
marcozecchini 0:9fca2b23d0ba 1832
marcozecchini 0:9fca2b23d0ba 1833 default:
marcozecchini 0:9fca2b23d0ba 1834 return( MBEDTLS_PK_NONE );
marcozecchini 0:9fca2b23d0ba 1835 }
marcozecchini 0:9fca2b23d0ba 1836 }
marcozecchini 0:9fca2b23d0ba 1837
marcozecchini 0:9fca2b23d0ba 1838 #endif /* MBEDTLS_PK_C */
marcozecchini 0:9fca2b23d0ba 1839
marcozecchini 0:9fca2b23d0ba 1840 #if defined(MBEDTLS_ECDH_C) || defined(MBEDTLS_ECDSA_C)
marcozecchini 0:9fca2b23d0ba 1841 int mbedtls_ssl_ciphersuite_uses_ec( const mbedtls_ssl_ciphersuite_t *info )
marcozecchini 0:9fca2b23d0ba 1842 {
marcozecchini 0:9fca2b23d0ba 1843 switch( info->key_exchange )
marcozecchini 0:9fca2b23d0ba 1844 {
marcozecchini 0:9fca2b23d0ba 1845 case MBEDTLS_KEY_EXCHANGE_ECDHE_RSA:
marcozecchini 0:9fca2b23d0ba 1846 case MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA:
marcozecchini 0:9fca2b23d0ba 1847 case MBEDTLS_KEY_EXCHANGE_ECDHE_PSK:
marcozecchini 0:9fca2b23d0ba 1848 case MBEDTLS_KEY_EXCHANGE_ECDH_RSA:
marcozecchini 0:9fca2b23d0ba 1849 case MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA:
marcozecchini 0:9fca2b23d0ba 1850 return( 1 );
marcozecchini 0:9fca2b23d0ba 1851
marcozecchini 0:9fca2b23d0ba 1852 default:
marcozecchini 0:9fca2b23d0ba 1853 return( 0 );
marcozecchini 0:9fca2b23d0ba 1854 }
marcozecchini 0:9fca2b23d0ba 1855 }
marcozecchini 0:9fca2b23d0ba 1856 #endif /* MBEDTLS_ECDH_C || MBEDTLS_ECDSA_C */
marcozecchini 0:9fca2b23d0ba 1857
marcozecchini 0:9fca2b23d0ba 1858 #if defined(MBEDTLS_KEY_EXCHANGE__SOME__PSK_ENABLED)
marcozecchini 0:9fca2b23d0ba 1859 int mbedtls_ssl_ciphersuite_uses_psk( const mbedtls_ssl_ciphersuite_t *info )
marcozecchini 0:9fca2b23d0ba 1860 {
marcozecchini 0:9fca2b23d0ba 1861 switch( info->key_exchange )
marcozecchini 0:9fca2b23d0ba 1862 {
marcozecchini 0:9fca2b23d0ba 1863 case MBEDTLS_KEY_EXCHANGE_PSK:
marcozecchini 0:9fca2b23d0ba 1864 case MBEDTLS_KEY_EXCHANGE_RSA_PSK:
marcozecchini 0:9fca2b23d0ba 1865 case MBEDTLS_KEY_EXCHANGE_DHE_PSK:
marcozecchini 0:9fca2b23d0ba 1866 case MBEDTLS_KEY_EXCHANGE_ECDHE_PSK:
marcozecchini 0:9fca2b23d0ba 1867 return( 1 );
marcozecchini 0:9fca2b23d0ba 1868
marcozecchini 0:9fca2b23d0ba 1869 default:
marcozecchini 0:9fca2b23d0ba 1870 return( 0 );
marcozecchini 0:9fca2b23d0ba 1871 }
marcozecchini 0:9fca2b23d0ba 1872 }
marcozecchini 0:9fca2b23d0ba 1873 #endif /* MBEDTLS_KEY_EXCHANGE__SOME__PSK_ENABLED */
marcozecchini 0:9fca2b23d0ba 1874
marcozecchini 0:9fca2b23d0ba 1875 #endif /* MBEDTLS_SSL_TLS_C */