diff --git a/platform/src/ssl_stream.cpp b/platform/src/ssl_stream.cpp index eb9f919..27192e4 100644 --- a/platform/src/ssl_stream.cpp +++ b/platform/src/ssl_stream.cpp @@ -524,19 +524,28 @@ struct ssl_mgr * ssl_manager_init(const char * ini_profile, const char * section struct ssl_mgr * mgr = ALLOC(struct ssl_mgr, 1); int ret = 0; - char version_str[TFE_SYMBOL_MAX]; + + char version_str[TFE_SYMBOL_MAX] = {}; mgr->logger = logger; mgr->ev_base_gc=ev_base_gc; MESA_load_profile_string_def(ini_profile, section, "ssl_min_version", version_str, sizeof(version_str), "ssl3"); mgr->ssl_min_version = sslver_str2num(version_str); - MESA_load_profile_string_def(ini_profile, section, "ssl_max_version", version_str, sizeof(version_str), "tls12"); - mgr->ssl_max_version = sslver_str2num(version_str); - + if (mgr->ssl_min_version < 0) { TFE_LOG_ERROR(logger, "Unsupported SSL/TLS protocol %s", version_str); goto error_out; } + + MESA_load_profile_string_def(ini_profile, section, "ssl_max_version", version_str, sizeof(version_str), "tls12"); + mgr->ssl_max_version = sslver_str2num(version_str); + + if (mgr->ssl_max_version < 0) + { + TFE_LOG_ERROR(logger, "Unsupported SSL/TLS protocol %s", version_str); + goto error_out; + } + ret=ssl_init(); if(ret<0) {