30 #if defined(POLARSSL_SSL_TLS_C)
37 #if defined(_MSC_VER) && !defined strcasecmp && !defined(EFIX64) && \
39 #define strcasecmp _stricmp
54 static const int ciphersuite_preference[] =
211 #define MAX_CIPHERSUITES 128
212 static int supported_ciphersuites[MAX_CIPHERSUITES];
213 static int supported_init = 0;
217 #if defined(POLARSSL_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED)
218 #if defined(POLARSSL_AES_C)
219 #if defined(POLARSSL_SHA1_C)
220 #if defined(POLARSSL_CIPHER_MODE_CBC)
233 #if defined(POLARSSL_SHA256_C)
234 #if defined(POLARSSL_CIPHER_MODE_CBC)
241 #if defined(POLARSSL_GCM_C)
249 #if defined(POLARSSL_SHA512_C)
250 #if defined(POLARSSL_CIPHER_MODE_CBC)
257 #if defined(POLARSSL_GCM_C)
267 #if defined(POLARSSL_CAMELLIA_C)
268 #if defined(POLARSSL_CIPHER_MODE_CBC)
269 #if defined(POLARSSL_SHA256_C)
276 #if defined(POLARSSL_SHA512_C)
285 #if defined(POLARSSL_GCM_C)
286 #if defined(POLARSSL_SHA256_C)
293 #if defined(POLARSSL_SHA512_C)
303 #if defined(POLARSSL_DES_C)
304 #if defined(POLARSSL_CIPHER_MODE_CBC)
305 #if defined(POLARSSL_SHA1_C)
315 #if defined(POLARSSL_ARC4_C)
316 #if defined(POLARSSL_SHA1_C)
325 #if defined(POLARSSL_CIPHER_NULL_CIPHER)
326 #if defined(POLARSSL_SHA1_C)
336 #if defined(POLARSSL_KEY_EXCHANGE_ECDHE_RSA_ENABLED)
337 #if defined(POLARSSL_AES_C)
338 #if defined(POLARSSL_SHA1_C)
339 #if defined(POLARSSL_CIPHER_MODE_CBC)
352 #if defined(POLARSSL_SHA256_C)
353 #if defined(POLARSSL_CIPHER_MODE_CBC)
360 #if defined(POLARSSL_GCM_C)
368 #if defined(POLARSSL_SHA512_C)
369 #if defined(POLARSSL_CIPHER_MODE_CBC)
376 #if defined(POLARSSL_GCM_C)
386 #if defined(POLARSSL_CAMELLIA_C)
387 #if defined(POLARSSL_CIPHER_MODE_CBC)
388 #if defined(POLARSSL_SHA256_C)
395 #if defined(POLARSSL_SHA512_C)
404 #if defined(POLARSSL_GCM_C)
405 #if defined(POLARSSL_SHA256_C)
412 #if defined(POLARSSL_SHA512_C)
422 #if defined(POLARSSL_DES_C)
423 #if defined(POLARSSL_CIPHER_MODE_CBC)
424 #if defined(POLARSSL_SHA1_C)
434 #if defined(POLARSSL_ARC4_C)
435 #if defined(POLARSSL_SHA1_C)
444 #if defined(POLARSSL_CIPHER_NULL_CIPHER)
445 #if defined(POLARSSL_SHA1_C)
455 #if defined(POLARSSL_KEY_EXCHANGE_DHE_RSA_ENABLED)
456 #if defined(POLARSSL_AES_C)
457 #if defined(POLARSSL_SHA512_C) && defined(POLARSSL_GCM_C)
465 #if defined(POLARSSL_SHA256_C)
466 #if defined(POLARSSL_GCM_C)
474 #if defined(POLARSSL_CIPHER_MODE_CBC)
489 #if defined(POLARSSL_CIPHER_MODE_CBC)
490 #if defined(POLARSSL_SHA1_C)
506 #if defined(POLARSSL_CAMELLIA_C)
507 #if defined(POLARSSL_CIPHER_MODE_CBC)
508 #if defined(POLARSSL_SHA256_C)
522 #if defined(POLARSSL_SHA1_C)
536 #if defined(POLARSSL_GCM_C)
537 #if defined(POLARSSL_SHA256_C)
545 #if defined(POLARSSL_SHA512_C)
555 #if defined(POLARSSL_DES_C)
556 #if defined(POLARSSL_CIPHER_MODE_CBC)
557 #if defined(POLARSSL_SHA1_C)
568 #if defined(POLARSSL_KEY_EXCHANGE_RSA_ENABLED)
569 #if defined(POLARSSL_AES_C)
570 #if defined(POLARSSL_SHA512_C) && defined(POLARSSL_GCM_C)
578 #if defined(POLARSSL_SHA256_C)
579 #if defined(POLARSSL_GCM_C)
587 #if defined(POLARSSL_CIPHER_MODE_CBC)
602 #if defined(POLARSSL_SHA1_C)
603 #if defined(POLARSSL_CIPHER_MODE_CBC)
619 #if defined(POLARSSL_CAMELLIA_C)
620 #if defined(POLARSSL_CIPHER_MODE_CBC)
621 #if defined(POLARSSL_SHA256_C)
635 #if defined(POLARSSL_SHA1_C)
650 #if defined(POLARSSL_GCM_C)
651 #if defined(POLARSSL_SHA256_C)
659 #if defined(POLARSSL_SHA1_C)
669 #if defined(POLARSSL_DES_C)
670 #if defined(POLARSSL_CIPHER_MODE_CBC)
671 #if defined(POLARSSL_SHA1_C)
681 #if defined(POLARSSL_ARC4_C)
682 #if defined(POLARSSL_MD5_C)
690 #if defined(POLARSSL_SHA1_C)
700 #if defined(POLARSSL_KEY_EXCHANGE_PSK_ENABLED)
701 #if defined(POLARSSL_AES_C)
702 #if defined(POLARSSL_GCM_C)
703 #if defined(POLARSSL_SHA256_C)
711 #if defined(POLARSSL_SHA512_C)
720 #if defined(POLARSSL_CIPHER_MODE_CBC)
721 #if defined(POLARSSL_SHA256_C)
729 #if defined(POLARSSL_SHA512_C)
737 #if defined(POLARSSL_SHA1_C)
753 #if defined(POLARSSL_CAMELLIA_C)
754 #if defined(POLARSSL_CIPHER_MODE_CBC)
755 #if defined(POLARSSL_SHA256_C)
763 #if defined(POLARSSL_SHA512_C)
772 #if defined(POLARSSL_GCM_C)
773 #if defined(POLARSSL_SHA256_C)
781 #if defined(POLARSSL_SHA512_C)
791 #if defined(POLARSSL_DES_C)
792 #if defined(POLARSSL_CIPHER_MODE_CBC)
793 #if defined(POLARSSL_SHA1_C)
803 #if defined(POLARSSL_ARC4_C)
804 #if defined(POLARSSL_SHA1_C)
814 #if defined(POLARSSL_KEY_EXCHANGE_DHE_PSK_ENABLED)
815 #if defined(POLARSSL_AES_C)
816 #if defined(POLARSSL_GCM_C)
817 #if defined(POLARSSL_SHA256_C)
825 #if defined(POLARSSL_SHA512_C)
834 #if defined(POLARSSL_CIPHER_MODE_CBC)
835 #if defined(POLARSSL_SHA256_C)
843 #if defined(POLARSSL_SHA512_C)
851 #if defined(POLARSSL_SHA1_C)
867 #if defined(POLARSSL_CAMELLIA_C)
868 #if defined(POLARSSL_CIPHER_MODE_CBC)
869 #if defined(POLARSSL_SHA256_C)
877 #if defined(POLARSSL_SHA512_C)
886 #if defined(POLARSSL_GCM_C)
887 #if defined(POLARSSL_SHA256_C)
895 #if defined(POLARSSL_SHA512_C)
905 #if defined(POLARSSL_DES_C)
906 #if defined(POLARSSL_CIPHER_MODE_CBC)
907 #if defined(POLARSSL_SHA1_C)
917 #if defined(POLARSSL_ARC4_C)
918 #if defined(POLARSSL_SHA1_C)
928 #if defined(POLARSSL_KEY_EXCHANGE_ECDHE_PSK_ENABLED)
929 #if defined(POLARSSL_AES_C)
931 #if defined(POLARSSL_CIPHER_MODE_CBC)
932 #if defined(POLARSSL_SHA256_C)
940 #if defined(POLARSSL_SHA512_C)
948 #if defined(POLARSSL_SHA1_C)
964 #if defined(POLARSSL_CAMELLIA_C)
965 #if defined(POLARSSL_CIPHER_MODE_CBC)
966 #if defined(POLARSSL_SHA256_C)
974 #if defined(POLARSSL_SHA512_C)
984 #if defined(POLARSSL_DES_C)
985 #if defined(POLARSSL_CIPHER_MODE_CBC)
986 #if defined(POLARSSL_SHA1_C)
996 #if defined(POLARSSL_ARC4_C)
997 #if defined(POLARSSL_SHA1_C)
1007 #if defined(POLARSSL_KEY_EXCHANGE_RSA_PSK_ENABLED)
1008 #if defined(POLARSSL_AES_C)
1009 #if defined(POLARSSL_GCM_C)
1010 #if defined(POLARSSL_SHA256_C)
1018 #if defined(POLARSSL_SHA512_C)
1027 #if defined(POLARSSL_CIPHER_MODE_CBC)
1028 #if defined(POLARSSL_SHA256_C)
1036 #if defined(POLARSSL_SHA512_C)
1044 #if defined(POLARSSL_SHA1_C)
1060 #if defined(POLARSSL_CAMELLIA_C)
1061 #if defined(POLARSSL_CIPHER_MODE_CBC)
1062 #if defined(POLARSSL_SHA256_C)
1070 #if defined(POLARSSL_SHA512_C)
1079 #if defined(POLARSSL_GCM_C)
1080 #if defined(POLARSSL_SHA256_C)
1088 #if defined(POLARSSL_SHA512_C)
1098 #if defined(POLARSSL_DES_C)
1099 #if defined(POLARSSL_CIPHER_MODE_CBC)
1100 #if defined(POLARSSL_SHA1_C)
1110 #if defined(POLARSSL_ARC4_C)
1111 #if defined(POLARSSL_SHA1_C)
1121 #if defined(POLARSSL_ENABLE_WEAK_CIPHERSUITES)
1122 #if defined(POLARSSL_CIPHER_NULL_CIPHER)
1123 #if defined(POLARSSL_KEY_EXCHANGE_RSA_ENABLED)
1124 #if defined(POLARSSL_MD5_C)
1132 #if defined(POLARSSL_SHA1_C)
1140 #if defined(POLARSSL_SHA256_C)
1149 #if defined(POLARSSL_KEY_EXCHANGE_PSK_ENABLED)
1150 #if defined(POLARSSL_SHA1_C)
1158 #if defined(POLARSSL_SHA256_C)
1166 #if defined(POLARSSL_SHA512_C)
1175 #if defined(POLARSSL_KEY_EXCHANGE_DHE_PSK_ENABLED)
1176 #if defined(POLARSSL_SHA1_C)
1184 #if defined(POLARSSL_SHA256_C)
1192 #if defined(POLARSSL_SHA512_C)
1201 #if defined(POLARSSL_KEY_EXCHANGE_ECDHE_PSK_ENABLED)
1202 #if defined(POLARSSL_SHA1_C)
1210 #if defined(POLARSSL_SHA256_C)
1218 #if defined(POLARSSL_SHA512_C)
1227 #if defined(POLARSSL_KEY_EXCHANGE_RSA_PSK_ENABLED)
1228 #if defined(POLARSSL_SHA1_C)
1236 #if defined(POLARSSL_SHA256_C)
1244 #if defined(POLARSSL_SHA512_C)
1254 #if defined(POLARSSL_DES_C)
1255 #if defined(POLARSSL_CIPHER_MODE_CBC)
1256 #if defined(POLARSSL_KEY_EXCHANGE_DHE_RSA_ENABLED)
1257 #if defined(POLARSSL_SHA1_C)
1266 #if defined(POLARSSL_KEY_EXCHANGE_RSA_ENABLED)
1267 #if defined(POLARSSL_SHA1_C)
1279 { 0,
"", 0, 0, 0, 0, 0, 0, 0, 0 }
1288 if( supported_init == 0 )
1290 const int *p = ciphersuite_preference;
1291 int *q = supported_ciphersuites;
1293 size_t max =
sizeof(supported_ciphersuites) /
sizeof(
int);
1295 for( i = 0; i < max - 1 && p[i] != 0; i++ )
1305 return supported_ciphersuites;
1312 if( NULL == ciphersuite_name )
1315 while( cur->
id != 0 )
1317 if( 0 == strcasecmp( cur->
name, ciphersuite_name ) )
1330 while( cur->
id != 0 )
1332 if( cur->
id == ciphersuite )
1348 return(
"unknown" );
1350 return( cur->
name );
1365 #if defined(POLARSSL_PK_C)
#define TLS_PSK_WITH_CAMELLIA_256_CBC_SHA384
TLS 1.2.
int ssl_ciphersuite_uses_ec(const ssl_ciphersuite_t *info)
#define TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
TLS 1.2.
#define TLS_RSA_WITH_CAMELLIA_128_CBC_SHA256
TLS 1.2.
#define TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA
#define TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
Not in SSL3!
#define TLS_RSA_PSK_WITH_CAMELLIA_128_GCM_SHA256
TLS 1.2.
#define TLS_PSK_WITH_NULL_SHA
Weak!
#define TLS_RSA_WITH_RC4_128_MD5
#define TLS_DHE_PSK_WITH_NULL_SHA
Weak!
#define TLS_ECDHE_RSA_WITH_CAMELLIA_256_GCM_SHA384
TLS 1.2.
#define TLS_RSA_WITH_CAMELLIA_128_GCM_SHA256
TLS 1.2.
#define TLS_DHE_PSK_WITH_NULL_SHA384
Weak! TLS 1.2.
#define TLS_PSK_WITH_3DES_EDE_CBC_SHA
#define TLS_RSA_PSK_WITH_AES_256_GCM_SHA384
TLS 1.2.
#define TLS_DHE_RSA_WITH_CAMELLIA_256_GCM_SHA384
TLS 1.2.
#define TLS_ECDHE_ECDSA_WITH_CAMELLIA_128_CBC_SHA256
TLS 1.2.
#define TLS_RSA_PSK_WITH_NULL_SHA384
Weak! TLS 1.2.
#define TLS_ECDHE_PSK_WITH_AES_256_CBC_SHA384
TLS 1.2.
#define TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA256
TLS 1.2.
#define TLS_RSA_WITH_CAMELLIA_256_GCM_SHA384
TLS 1.2.
#define TLS_RSA_PSK_WITH_AES_128_CBC_SHA
#define TLS_DHE_PSK_WITH_3DES_EDE_CBC_SHA
#define TLS_RSA_WITH_NULL_MD5
Weak!
#define TLS_PSK_WITH_AES_256_CBC_SHA
#define TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA
Not in SSL3!
#define TLS_DHE_PSK_WITH_AES_128_CBC_SHA
#define TLS_DHE_PSK_WITH_AES_128_CBC_SHA256
TLS 1.2.
#define TLS_ECDHE_PSK_WITH_NULL_SHA256
Weak! TLS 1.2.
Configuration options (set of defines)
#define TLS_ECDHE_RSA_WITH_RC4_128_SHA
Not in SSL3!
#define TLS_PSK_WITH_AES_128_CBC_SHA
#define TLS_DHE_RSA_WITH_AES_256_CBC_SHA
#define TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
TLS 1.2.
#define TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
TLS 1.2.
#define TLS_ECDHE_ECDSA_WITH_RC4_128_SHA
Not in SSL3!
SSL Ciphersuites for PolarSSL.
#define SSL_MAJOR_VERSION_3
#define TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA256
TLS 1.2.
#define TLS_RSA_PSK_WITH_RC4_128_SHA
pk_type_t ssl_get_ciphersuite_sig_pk_alg(const ssl_ciphersuite_t *info)
#define TLS_ECDHE_PSK_WITH_NULL_SHA
Weak! No SSL3!
#define TLS_ECDHE_ECDSA_WITH_CAMELLIA_256_CBC_SHA384
TLS 1.2.
int ssl_get_ciphersuite_id(const char *ciphersuite_name)
Return the ID of the ciphersuite associated with the given name.
#define SSL_MINOR_VERSION_1
#define TLS_RSA_WITH_RC4_128_SHA
#define TLS_PSK_WITH_CAMELLIA_128_CBC_SHA256
TLS 1.2.
#define TLS_PSK_WITH_CAMELLIA_128_GCM_SHA256
TLS 1.2.
#define TLS_ECDHE_ECDSA_WITH_NULL_SHA
Weak!
#define TLS_ECDHE_RSA_WITH_CAMELLIA_128_GCM_SHA256
TLS 1.2.
#define TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256
TLS 1.2.
#define TLS_DHE_PSK_WITH_AES_256_CBC_SHA
#define TLS_DHE_PSK_WITH_NULL_SHA256
Weak! TLS 1.2.
#define TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
TLS 1.2.
#define TLS_ECDHE_PSK_WITH_RC4_128_SHA
Not in SSL3!
#define TLS_RSA_PSK_WITH_AES_256_CBC_SHA384
TLS 1.2.
#define TLS_PSK_WITH_CAMELLIA_256_GCM_SHA384
TLS 1.2.
#define TLS_ECDHE_PSK_WITH_CAMELLIA_128_CBC_SHA256
TLS 1.2.
#define TLS_DHE_PSK_WITH_AES_256_CBC_SHA384
TLS 1.2.
#define TLS_RSA_WITH_AES_128_GCM_SHA256
TLS 1.2.
#define SSL_MINOR_VERSION_0
#define TLS_ECDHE_RSA_WITH_CAMELLIA_256_CBC_SHA384
TLS 1.2.
#define TLS_ECDHE_RSA_WITH_CAMELLIA_128_CBC_SHA256
TLS 1.2.
#define POLARSSL_CIPHERSUITE_WEAK
#define TLS_DHE_PSK_WITH_CAMELLIA_128_CBC_SHA256
TLS 1.2.
key_exchange_type_t key_exchange
#define TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA
Not in SSL3!
#define TLS_DHE_RSA_WITH_AES_256_CBC_SHA256
TLS 1.2.
#define TLS_DHE_PSK_WITH_CAMELLIA_128_GCM_SHA256
TLS 1.2.
#define TLS_RSA_WITH_AES_256_GCM_SHA384
TLS 1.2.
#define TLS_PSK_WITH_NULL_SHA256
Weak! TLS 1.2.
#define TLS_PSK_WITH_NULL_SHA384
Weak! TLS 1.2.
#define TLS_ECDHE_PSK_WITH_AES_256_CBC_SHA
Not in SSL3!
#define TLS_RSA_WITH_AES_256_CBC_SHA
#define TLS_PSK_WITH_AES_128_GCM_SHA256
TLS 1.2.
#define TLS_DHE_RSA_WITH_AES_128_CBC_SHA
#define TLS_ECDHE_RSA_WITH_NULL_SHA
Weak!
int ssl_ciphersuite_uses_psk(const ssl_ciphersuite_t *info)
#define TLS_DHE_PSK_WITH_RC4_128_SHA
#define TLS_RSA_PSK_WITH_NULL_SHA256
Weak! TLS 1.2.
#define SSL_MINOR_VERSION_3
#define TLS_RSA_PSK_WITH_CAMELLIA_256_GCM_SHA384
TLS 1.2.
pk_type_t
Public key types.
#define TLS_RSA_PSK_WITH_AES_128_GCM_SHA256
TLS 1.2.
const ssl_ciphersuite_t * ssl_ciphersuite_from_string(const char *ciphersuite_name)
#define TLS_ECDHE_ECDSA_WITH_CAMELLIA_128_GCM_SHA256
TLS 1.2.
#define TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
Not in SSL3!
#define TLS_ECDHE_ECDSA_WITH_CAMELLIA_256_GCM_SHA384
TLS 1.2.
#define TLS_ECDHE_PSK_WITH_NULL_SHA384
Weak! TLS 1.2.
This structure is used for storing ciphersuite information.
#define TLS_DHE_RSA_WITH_AES_128_CBC_SHA256
TLS 1.2.
#define TLS_DHE_PSK_WITH_AES_128_GCM_SHA256
TLS 1.2.
#define TLS_RSA_PSK_WITH_CAMELLIA_256_CBC_SHA384
TLS 1.2.
#define TLS_PSK_WITH_AES_256_CBC_SHA384
TLS 1.2.
const ssl_ciphersuite_t * ssl_ciphersuite_from_id(int ciphersuite_id)
#define TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
TLS 1.2.
#define TLS_RSA_WITH_NULL_SHA256
Weak!
#define TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
TLS 1.2.
#define TLS_RSA_WITH_3DES_EDE_CBC_SHA
#define TLS_DHE_RSA_WITH_DES_CBC_SHA
Weak! Not in TLS 1.2.
#define TLS_RSA_WITH_DES_CBC_SHA
Weak! Not in TLS 1.2.
#define TLS_ECDHE_PSK_WITH_CAMELLIA_256_CBC_SHA384
TLS 1.2.
#define TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA256
TLS 1.2.
#define TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
Not in SSL3!
const int * ssl_list_ciphersuites(void)
Returns the list of ciphersuites supported by the SSL/TLS module.
#define TLS_DHE_PSK_WITH_CAMELLIA_256_CBC_SHA384
TLS 1.2.
#define TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
TLS 1.2.
#define TLS_RSA_WITH_NULL_SHA
Weak!
#define TLS_DHE_RSA_WITH_CAMELLIA_128_GCM_SHA256
TLS 1.2.
#define TLS_RSA_WITH_CAMELLIA_256_CBC_SHA
#define TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA
Not in SSL3!
#define TLS_DHE_PSK_WITH_CAMELLIA_256_GCM_SHA384
TLS 1.2.
#define TLS_RSA_WITH_CAMELLIA_256_CBC_SHA256
TLS 1.2.
#define TLS_PSK_WITH_AES_128_CBC_SHA256
TLS 1.2.
#define TLS_RSA_PSK_WITH_3DES_EDE_CBC_SHA
#define TLS_RSA_PSK_WITH_AES_256_CBC_SHA
#define TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
TLS 1.2.
#define TLS_RSA_PSK_WITH_NULL_SHA
Weak!
#define TLS_RSA_PSK_WITH_CAMELLIA_128_CBC_SHA256
TLS 1.2.
#define TLS_DHE_PSK_WITH_AES_256_GCM_SHA384
TLS 1.2.
#define TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA
#define TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
TLS 1.2.
#define TLS_RSA_WITH_AES_256_CBC_SHA256
TLS 1.2.
#define TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA
const char * ssl_get_ciphersuite_name(const int ciphersuite_id)
Return the name of the ciphersuite associated with the given ID.
#define TLS_RSA_WITH_AES_128_CBC_SHA256
TLS 1.2.
#define TLS_RSA_WITH_AES_128_CBC_SHA
#define TLS_PSK_WITH_RC4_128_SHA
#define TLS_RSA_PSK_WITH_AES_128_CBC_SHA256
TLS 1.2.
#define TLS_ECDHE_PSK_WITH_3DES_EDE_CBC_SHA
Not in SSL3!
#define TLS_PSK_WITH_AES_256_GCM_SHA384
TLS 1.2.
#define TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
Not in SSL3!
#define TLS_RSA_WITH_CAMELLIA_128_CBC_SHA