From 12722e3131c1d2ee381ed024e752ab6db0e766eb Mon Sep 17 00:00:00 2001 From: Georg Richter Date: Wed, 27 Jul 2022 14:52:20 +0200 Subject: [PATCH] Error message fix: Since TLS errors might happen not only when connecting and SSL protocol is not longer used, errormessage for CR_SSL_CONNECTION_ERROR was replaced by TLS/SSL error. --- libmariadb/ma_errmsg.c | 2 +- libmariadb/secure/gnutls.c | 2 +- libmariadb/secure/ma_schannel.c | 5 ++--- libmariadb/secure/schannel.c | 2 +- 4 files changed, 5 insertions(+), 6 deletions(-) diff --git a/libmariadb/ma_errmsg.c b/libmariadb/ma_errmsg.c index fe8eea9e..3c6d6ec3 100644 --- a/libmariadb/ma_errmsg.c +++ b/libmariadb/ma_errmsg.c @@ -108,7 +108,7 @@ const char *client_errors[]= /* 2023 */ "", /* 2024 */ "", /* 2025 */ "", -/* 2026 */ "SSL connection error: %-.100s", +/* 2026 */ "TLS/SSL error1: %-.100s", /* 2027 */ "received malformed packet", /* 2028 */ "", /* 2029 */ "", diff --git a/libmariadb/secure/gnutls.c b/libmariadb/secure/gnutls.c index dd462752..6e32366c 100644 --- a/libmariadb/secure/gnutls.c +++ b/libmariadb/secure/gnutls.c @@ -889,7 +889,7 @@ static void ma_tls_set_error(MYSQL *mysql, void *ssl, int ssl_errno) alert_name= gnutls_alert_get_name(alert_desc); snprintf(ssl_error, MAX_SSL_ERR_LEN, "fatal alert received: %s", alert_name); - pvio->set_error(mysql, CR_SSL_CONNECTION_ERROR, SQLSTATE_UNKNOWN, ssl_error); + pvio->set_error(mysql, CR_SSL_CONNECTION_ERROR, SQLSTATE_UNKNOWN, 0, ssl_error); return; } diff --git a/libmariadb/secure/ma_schannel.c b/libmariadb/secure/ma_schannel.c index e3d395d1..be4148c7 100644 --- a/libmariadb/secure/ma_schannel.c +++ b/libmariadb/secure/ma_schannel.c @@ -52,7 +52,7 @@ void ma_schannel_set_sec_error(MARIADB_PVIO* pvio, DWORD ErrorNo) void ma_schannel_set_win_error(MARIADB_PVIO *pvio, DWORD ErrorNo) { char buffer[256]; - ma_format_win32_error(buffer, sizeof(buffer), ErrorNo, "SSL connection error: "); + ma_format_win32_error(buffer, sizeof(buffer), ErrorNo, "TLS/SSL error: "); pvio->set_error(pvio->mysql, CR_SSL_CONNECTION_ERROR, SQLSTATE_UNKNOWN, buffer); return; } @@ -526,8 +526,7 @@ my_bool ma_schannel_verify_certs(MARIADB_TLS *ctls, BOOL verify_server_name) end: if (!ret) { - pvio->set_error(mysql, CR_SSL_CONNECTION_ERROR, SQLSTATE_UNKNOWN, - "SSL connection error: %s", errmsg); + pvio->set_error(mysql, CR_SSL_CONNECTION_ERROR, SQLSTATE_UNKNOWN, 0, errmsg); } if (pServerCert) CertFreeCertificateContext(pServerCert); diff --git a/libmariadb/secure/schannel.c b/libmariadb/secure/schannel.c index acd7394e..4b168129 100644 --- a/libmariadb/secure/schannel.c +++ b/libmariadb/secure/schannel.c @@ -225,7 +225,7 @@ static int ma_tls_set_client_certs(MARIADB_TLS *ctls,const CERT_CONTEXT **cert_c *cert_ctx = schannel_create_cert_context(certfile, keyfile, errmsg, sizeof(errmsg)); if (!*cert_ctx) { - pvio->set_error(pvio->mysql, CR_SSL_CONNECTION_ERROR, SQLSTATE_UNKNOWN, "SSL connection error: %s", errmsg); + pvio->set_error(pvio->mysql, CR_SSL_CONNECTION_ERROR, SQLSTATE_UNKNOWN, 0, errmsg); return 1; }