Annotation of embedaddon/php/ext/mysqli/tests/bug55283.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: Bug #55283 (SSL options set by mysqli_ssl_set ignored for MySQLi persistent connections)
! 3: --SKIPIF--
! 4: <?php
! 5: require_once('skipif.inc');
! 6: require_once('skipifconnectfailure.inc');
! 7: require_once("connect.inc");
! 8:
! 9: if ($IS_MYSQLND && !extension_loaded("openssl"))
! 10: die("skip PHP streams lack support for SSL. mysqli is compiled to use mysqlnd which uses PHP streams in turn.");
! 11:
! 12: if (!($link = @my_mysqli_connect($host, $user, $passwd, $db, $port, $socket)))
! 13: die(sprintf("skip Connect failed, [%d] %s", mysqli_connect_errno(), mysqli_connect_error()));
! 14:
! 15: $row = NULL;
! 16: if ($res = $link->query('SHOW VARIABLES LIKE "have_ssl"')) {
! 17: $row = $res->fetch_row();
! 18: } else {
! 19: if ($link->errno == 1064 && ($res = $link->query("SHOW VARIABLES"))) {
! 20: while ($row = $res->fetch_row())
! 21: if ($row[0] == 'have_ssl')
! 22: break;
! 23: } else {
! 24: die(sprintf("skip Failed to test for MySQL SSL support, [%d] %s", $link->errno, $link->error));
! 25: }
! 26: }
! 27:
! 28:
! 29: if (empty($row))
! 30: die(sprintf("skip Failed to test for MySQL SSL support, [%d] %s", $link->errno, $link->error));
! 31:
! 32: if ($row[1] == 'NO')
! 33: die(sprintf("skip MySQL has no SSL support, [%d] %s", $link->errno, $link->error));
! 34:
! 35: $link->close();
! 36: ?>
! 37: --FILE--
! 38: <?php
! 39: include "connect.inc";
! 40: $db1 = new mysqli();
! 41:
! 42:
! 43: $flags = MYSQLI_CLIENT_SSL;
! 44:
! 45: $link = mysqli_init();
! 46: mysqli_ssl_set($link, null, null, null, null, "RC4-MD5");
! 47: if (my_mysqli_real_connect($link, 'p:' . $host, $user, $passwd, $db, $port, null, $flags)) {
! 48: $r = $link->query("SHOW STATUS LIKE 'Ssl_cipher'");
! 49: var_dump($r->fetch_row());
! 50: }
! 51:
! 52: /* non-persistent connection */
! 53: $link2 = mysqli_init();
! 54: mysqli_ssl_set($link2, null, null, null, null, "RC4-MD5");
! 55: if (my_mysqli_real_connect($link2, $host, $user, $passwd, $db, $port, null, $flags)) {
! 56: $r2 = $link2->query("SHOW STATUS LIKE 'Ssl_cipher'");
! 57: var_dump($r2->fetch_row());
! 58: }
! 59:
! 60: echo "done\n";
! 61: ?>
! 62: --EXPECTF--
! 63: array(2) {
! 64: [0]=>
! 65: string(10) "Ssl_cipher"
! 66: [1]=>
! 67: string(7) "RC4-MD5"
! 68: }
! 69: array(2) {
! 70: [0]=>
! 71: string(10) "Ssl_cipher"
! 72: [1]=>
! 73: string(7) "RC4-MD5"
! 74: }
! 75: done
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>