24 SSLLib::SSLAPI::Config::Ptr sslcfg(
new SSLLib::SSLAPI::Config);
25 sslcfg->set_local_cert_enabled(
false);
28 sslcfg->set_tls_ciphersuite_list(
"TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_CCM_SHA256");
30 sslfact = sslcfg->new_factory();
33 sslcfg->set_tls_ciphersuite_list(
"TLS_CHACHA2000");
34#if defined(USE_MBEDTLS)
36 sslfact = sslcfg->new_factory();
39 EXPECT_THROW(sslcfg->new_factory(), SSLFactoryAPI::ssl_context_error);
50 SSLLib::SSLAPI::Config::Ptr sslcfg(
new SSLLib::SSLAPI::Config);
51 sslcfg->set_local_cert_enabled(
false);
56 sslcfg->set_tls_cipher_list(
"TLS-ECDHE-RSA-WITH-AES-128-GCM-SHA256:TLS-ECDHE-RSA-WITH-AES-128-CBC-SHA256:AES256-SHA");
58 sslfact = sslcfg->new_factory();
70 SSLLib::SSLAPI::Config::Ptr sslcfg(
new SSLLib::SSLAPI::Config);
71 sslcfg->set_local_cert_enabled(
false);
74 sslcfg->set_debug_level(1);
76 sslcfg->set_tls_groups(
"secp521r1:secp384r1");
79 auto f = sslcfg->new_factory();
82 sslcfg->set_tls_groups(
"secp521r1:secp384r1:greenhell");
85 f = sslcfg->new_factory();
89 EXPECT_EQ(
"OpenSSL -- warning ignoring unknown group 'greenhell' in tls-groups\n",
testLog->
stopCollecting());
91 EXPECT_EQ(
"mbed TLS -- warning ignoring unknown group 'greenhell' in tls-groups\n",
testLog->
stopCollecting());
95#if defined(USE_OPENSSL)
96TEST(ssl, translate_ciphers_openssl)
100 EXPECT_EQ(
"ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA",
109#if defined(USE_OPENSSL) && OPENSSL_VERSION_NUMBER >= 0x30000000L
110TEST(ssl, enablelegacyProvider)
114 SSLLib::SSLAPI::Config::Ptr sslcfg(
new SSLLib::SSLAPI::Config);
115 sslcfg->set_local_cert_enabled(
false);
117 sslcfg->set_rng(rng);
119 auto f_nolegacy = sslcfg->new_factory();
123 SSLLib::SSLAPI::Config::Ptr sslcfg_legacy(
new SSLLib::SSLAPI::Config);
124 sslcfg_legacy->set_local_cert_enabled(
false);
126 sslcfg_legacy->set_rng(rng);
127 sslcfg_legacy->enable_legacy_algorithms(
true);
130 auto f_legacy = sslcfg_legacy->new_factory();
std::string stopCollecting()
void setPrintOutput(bool doOutput)
bool isStdoutEnabled() const
static std::string translate_cipher_list(std::string cipherlist)
virtual SSLAPI::Ptr ssl()=0
openvpn::LogOutputCollector * testLog
constexpr int LOG_LEVEL_INFO
TEST(ssl, sslciphersuites)