I added functionality to get the RSSI, BER, and Cell Neighbor for reporting connection issues to M2X

Dependencies:   WncControllerK64F

Committer:
JMF
Date:
Mon Nov 14 21:15:42 2016 +0000
Revision:
16:8a4105d407d3
Parent:
12:0071cb144c7a
updated to ensure it builds with TLS by correcting config defaults.

Who changed what in which revision?

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