@@ -2727,10 +2727,12 @@ TEST_F(xapi, tls_ver_ciphers)
2727
2727
printf (ERR); \
2728
2728
FAIL (); }
2729
2729
2730
- std::set<std::string> versions = {" TLSv1.1 " ," TLSv1.2 " };
2730
+ std::set<std::string> versions = {" TLSv1.2 " ," TLSv1.3 " };
2731
2731
std::map<std::string, std::string> suites_map = {
2732
- { " DHE-RSA-AES128-GCM-SHA256" , " TLS_DHE_RSA_WITH_AES_128_GCM_SHA256" },
2733
- { " DES-CBC3-SHA" , " TLS_RSA_WITH_3DES_EDE_CBC_SHA" }
2732
+ // mandatory 1.2 cipher
2733
+ { " ECDHE-RSA-AES128-GCM-SHA256" , " TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256" },
2734
+ // approved 1.3 cipher
2735
+ { " TLS_AES_128_GCM_SHA256" , " TLS_AES_128_GCM_SHA256" }
2734
2736
};
2735
2737
2736
2738
std::string versions_str;
@@ -2807,6 +2809,11 @@ TEST_F(xapi, tls_ver_ciphers)
2807
2809
mysqlx_session_options_t *opt = mysqlx_session_options_new ();
2808
2810
mysqlx_session_t *sess;
2809
2811
mysqlx_error_t *error = NULL ;
2812
+ // Note: make sure that one of the ciphers is acceptable
2813
+ string suites =
2814
+ " DHE-RSA-AES128-GCM-SHA256 , \t\n "
2815
+ + suites_map.begin ()->second + " " ;
2816
+ const char * suites_str = suites.c_str ();
2810
2817
2811
2818
// Test parsing of comma separated list values
2812
2819
@@ -2818,7 +2825,7 @@ TEST_F(xapi, tls_ver_ciphers)
2818
2825
OPT_PWD (get_password ()),
2819
2826
OPT_SSL_MODE (SSL_MODE_REQUIRED),
2820
2827
OPT_TLS_VERSIONS (" \t TLSv1.1,\n TLSv1.2 " ),
2821
- OPT_TLS_CIPHERSUITES (" DHE-RSA-AES128-GCM-SHA256 , \t\n TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 " ),
2828
+ OPT_TLS_CIPHERSUITES (suites_str ),
2822
2829
PARAM_END
2823
2830
));
2824
2831
@@ -2835,7 +2842,7 @@ TEST_F(xapi, tls_ver_ciphers)
2835
2842
OPT_PWD (get_password ()),
2836
2843
OPT_SSL_MODE (SSL_MODE_REQUIRED),
2837
2844
OPT_TLS_VERSIONS (" " ),
2838
- OPT_TLS_CIPHERSUITES (" DHE-RSA-AES128-GCM-SHA256 , \t\n TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 " ),
2845
+ OPT_TLS_CIPHERSUITES (suites_str ),
2839
2846
PARAM_END
2840
2847
));
2841
2848
@@ -2866,7 +2873,7 @@ TEST_F(xapi, tls_ver_ciphers)
2866
2873
OPT_PWD (get_password ()),
2867
2874
OPT_SSL_MODE (SSL_MODE_REQUIRED),
2868
2875
OPT_TLS_VERSIONS (" SSLv1" ),
2869
- OPT_TLS_CIPHERSUITES (" DHE-RSA-AES128-GCM-SHA256 , \t\n TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 " ),
2876
+ OPT_TLS_CIPHERSUITES (suites_str ),
2870
2877
PARAM_END
2871
2878
));
2872
2879
@@ -2886,7 +2893,7 @@ TEST_F(xapi, tls_ver_ciphers)
2886
2893
OPT_PWD (get_password ()),
2887
2894
OPT_SSL_MODE (SSL_MODE_REQUIRED),
2888
2895
OPT_TLS_VERSIONS (" foo" ),
2889
- OPT_TLS_CIPHERSUITES (" DHE-RSA-AES128-GCM-SHA256 , \t\n TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 " ),
2896
+ OPT_TLS_CIPHERSUITES (suites_str ),
2890
2897
PARAM_END
2891
2898
));
2892
2899
@@ -2919,6 +2926,12 @@ TEST_F(xapi, tls_ver_ciphers)
2919
2926
EXPECT_EQ (NULL , sess);
2920
2927
2921
2928
// Some ciphers invalid, but some are OK
2929
+
2930
+ string suites1 =
2931
+ " foo,TLS_DHE_RSA_WITH_DES_CBC_SHA,"
2932
+ + suites_map.begin ()->second +
2933
+ " ,TLS_RSA_WITH_3DES_EDE_CBC_SHA" ;
2934
+
2922
2935
mysqlx_free_options (opt);
2923
2936
opt = mysqlx_session_options_new ();
2924
2937
EXPECT_EQ (RESULT_OK, mysqlx_session_option_set (
@@ -2929,10 +2942,7 @@ TEST_F(xapi, tls_ver_ciphers)
2929
2942
OPT_PWD (get_password ()),
2930
2943
OPT_SSL_MODE (SSL_MODE_REQUIRED),
2931
2944
OPT_TLS_VERSIONS (" TLSv1.1,TLSv1.2" ),
2932
- OPT_TLS_CIPHERSUITES (
2933
- " foo,TLS_DHE_RSA_WITH_DES_CBC_SHA,"
2934
- " TLS_DHE_RSA_WITH_AES_128_GCM_SHA256,TLS_RSA_WITH_3DES_EDE_CBC_SHA"
2935
- ),
2945
+ OPT_TLS_CIPHERSUITES (suites1.c_str ()),
2936
2946
PARAM_END
2937
2947
));
2938
2948
@@ -2956,7 +2966,7 @@ TEST_F(xapi, tls_ver_ciphers)
2956
2966
OPT_SSL_MODE (SSL_MODE_REQUIRED),
2957
2967
OPT_TLS_VERSIONS (" TLSv1.1" ),
2958
2968
OPT_TLS_VERSIONS (" TLSv1.2" ),
2959
- OPT_TLS_CIPHERSUITES (" DHE-RSA-AES128-GCM-SHA256 , \t\n TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 " ),
2969
+ OPT_TLS_CIPHERSUITES (suites_str ),
2960
2970
PARAM_END
2961
2971
));
2962
2972
@@ -2970,8 +2980,8 @@ TEST_F(xapi, tls_ver_ciphers)
2970
2980
OPT_PWD (get_password ()),
2971
2981
OPT_SSL_MODE (SSL_MODE_REQUIRED),
2972
2982
OPT_TLS_VERSIONS (" TLSv1.1" ),
2973
- OPT_TLS_CIPHERSUITES (" DHE-RSA-AES128-GCM-SHA256 , \t\n TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 " ),
2974
- OPT_TLS_CIPHERSUITES (" DHE-RSA-AES128-GCM-SHA256 , \t\n TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 " ),
2983
+ OPT_TLS_CIPHERSUITES (suites_str ),
2984
+ OPT_TLS_CIPHERSUITES (suites_str ),
2975
2985
PARAM_END
2976
2986
));
2977
2987
mysqlx_free (opt);
0 commit comments