From 996b178406390f1dd32833349770f627f2a155d4 Mon Sep 17 00:00:00 2001 From: Jakub Vrana Date: Mon, 3 Mar 2025 16:06:10 +0100 Subject: [PATCH] MySQL: Fix connecting with self-signed cert --- adminer/drivers/mysql.inc.php | 10 +++++----- plugins/login-ssl.php | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/adminer/drivers/mysql.inc.php b/adminer/drivers/mysql.inc.php index ab0fd55c..21b304f5 100644 --- a/adminer/drivers/mysql.inc.php +++ b/adminer/drivers/mysql.inc.php @@ -27,7 +27,7 @@ if (!defined("DRIVER")) { $database, (is_numeric($port) ? $port : ini_get("mysqli.default_port")), (!is_numeric($port) ? $port : $socket), - ($ssl ? (empty($ssl['cert']) ? 2048 : 64) : 0) // 2048 - MYSQLI_CLIENT_SSL, 64 - MYSQLI_CLIENT_SSL_DONT_VERIFY_SERVER_CERT (not available before PHP 5.6.16) + ($ssl ? ($ssl['verify'] !== false ? 2048 : 64) : 0) // 2048 - MYSQLI_CLIENT_SSL, 64 - MYSQLI_CLIENT_SSL_DONT_VERIFY_SERVER_CERT (not available before PHP 5.6.16) ); $this->options(MYSQLI_OPT_LOCAL_INFILE, false); return $return; @@ -237,16 +237,16 @@ if (!defined("DRIVER")) { $options = array(PDO::MYSQL_ATTR_LOCAL_INFILE => false); $ssl = $adminer->connectSsl(); if ($ssl) { - if (!empty($ssl['key'])) { + if ($ssl['key']) { $options[PDO::MYSQL_ATTR_SSL_KEY] = $ssl['key']; } - if (!empty($ssl['cert'])) { + if ($ssl['cert']) { $options[PDO::MYSQL_ATTR_SSL_CERT] = $ssl['cert']; } - if (!empty($ssl['ca'])) { + if ($ssl['ca']) { $options[PDO::MYSQL_ATTR_SSL_CA] = $ssl['ca']; } - if (!empty($ssl['verify'])) { + if (isset($ssl['verify'])) { $options[PDO::MYSQL_ATTR_SSL_VERIFY_SERVER_CERT] = $ssl['verify']; } } diff --git a/plugins/login-ssl.php b/plugins/login-ssl.php index 0909cbe3..38324d64 100644 --- a/plugins/login-ssl.php +++ b/plugins/login-ssl.php @@ -1,6 +1,6 @@