]> granicus.if.org Git - php/commitdiff
Fix mysqli ssl tests
authorNikita Popov <nikita.ppv@gmail.com>
Thu, 5 Dec 2019 07:37:52 +0000 (08:37 +0100)
committerNikita Popov <nikita.ppv@gmail.com>
Thu, 5 Dec 2019 07:38:40 +0000 (08:38 +0100)
First, make sure the tests are skipped if we connect via unix
socket, as we can't use SSL in that case.

Second, use a cipher that is not blacklisted in current MySQL
versions.

ext/mysqli/tests/bug51647.phpt
ext/mysqli/tests/bug55283.phpt

index 7385538fbbb3f085bccbf3e813687de22ffb3955..cd7ccf8017a4d8cdadccc067ea032e6fda216430 100644 (file)
@@ -12,6 +12,9 @@ if ($IS_MYSQLND && !extension_loaded("openssl"))
 if (!($link = @my_mysqli_connect($host, $user, $passwd, $db, $port, $socket)))
        die(sprintf("skip Connect failed, [%d] %s", mysqli_connect_errno(), mysqli_connect_error()));
 
+if (false === strpos($link->host_info, 'TCP/IP'))
+       die(sprintf("skip SSL only supported on TCP/IP"));
+
 $row = NULL;
 if ($res = $link->query('SHOW VARIABLES LIKE "have_ssl"')) {
        $row = $res->fetch_row();
index e7b16fdd13c2d2bb959493b02570f93a8b18c7c9..e70ba5f8c73712f3546a4ff790b7bce41a8dc946 100644 (file)
@@ -12,6 +12,9 @@ if ($IS_MYSQLND && !extension_loaded("openssl"))
 if (!($link = @my_mysqli_connect($host, $user, $passwd, $db, $port, $socket)))
        die(sprintf("skip Connect failed, [%d] %s", mysqli_connect_errno(), mysqli_connect_error()));
 
+if (false === strpos($link->host_info, 'TCP/IP'))
+       die(sprintf("skip SSL only supported on TCP/IP"));
+
 $row = NULL;
 if ($res = $link->query('SHOW VARIABLES LIKE "have_ssl"')) {
        $row = $res->fetch_row();
@@ -36,14 +39,14 @@ $link->close();
 ?>
 --FILE--
 <?php
-       include "connect.inc";
+       require_once "connect.inc";
        $db1 = new mysqli();
 
 
        $flags = MYSQLI_CLIENT_SSL | MYSQLI_CLIENT_SSL_DONT_VERIFY_SERVER_CERT;
 
        $link = mysqli_init();
-       mysqli_ssl_set($link, null, null, null, null, "RC4-MD5");
+       mysqli_ssl_set($link, null, null, null, null, "AES256-SHA");
        if (my_mysqli_real_connect($link, 'p:' . $host, $user, $passwd, $db, $port, null, $flags)) {
                $r = $link->query("SHOW STATUS LIKE 'Ssl_cipher'");
                var_dump($r->fetch_row());
@@ -51,7 +54,7 @@ $link->close();
 
        /* non-persistent connection */
        $link2 = mysqli_init();
-       mysqli_ssl_set($link2, null, null, null, null, "RC4-MD5");
+       mysqli_ssl_set($link2, null, null, null, null, "AES256-SHA");
        if (my_mysqli_real_connect($link2, $host, $user, $passwd, $db, $port, null, $flags)) {
                $r2 = $link2->query("SHOW STATUS LIKE 'Ssl_cipher'");
                var_dump($r2->fetch_row());
@@ -64,12 +67,12 @@ array(2) {
   [0]=>
   string(10) "Ssl_cipher"
   [1]=>
-  string(7) "RC4-MD5"
+  string(10) "AES256-SHA"
 }
 array(2) {
   [0]=>
   string(10) "Ssl_cipher"
   [1]=>
-  string(7) "RC4-MD5"
+  string(10) "AES256-SHA"
 }
 done