uw Mon, 19 Oct 2009 12:09:48 +0000 Revision: http://svn.php.net/viewvc?view=revision&revision=289741
Log: Fixing host info for TCP/IP and aligning mysqlnd and libmysql Changed paths: U php/php-src/branches/PHP_5_3/ext/mysqli/tests/mysqli_get_host_info.phpt U php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c U php/php-src/trunk/ext/mysqli/tests/mysqli_get_host_info.phpt U php/php-src/trunk/ext/mysqlnd/mysqlnd.c Modified: php/php-src/branches/PHP_5_3/ext/mysqli/tests/mysqli_get_host_info.phpt =================================================================== --- php/php-src/branches/PHP_5_3/ext/mysqli/tests/mysqli_get_host_info.phpt 2009-10-19 05:29:50 UTC (rev 289740) +++ php/php-src/branches/PHP_5_3/ext/mysqli/tests/mysqli_get_host_info.phpt 2009-10-19 12:09:48 UTC (rev 289741) @@ -20,6 +20,11 @@ if (!is_string($info = mysqli_get_host_info($link)) || ('' === $info)) printf("[003] Expecting string/any_non_empty, got %s/%s\n", gettype($info), $info); + if ($IS_MYSQLND && $host != 'localhost' && $host != '127.0.0.1' && $port != '' && $host != "" && strtoupper(substr(PHP_OS, 0, 3)) != 'WIN') { + /* this should be a TCP/IP connection and not a Unix Socket (or SHM or Named Pipe) */ + if (!stristr($info, "TCP/IP")) + printf("[004] Should be a TCP/IP connection but mysqlnd says '%s'\n", $info); + } print "done!"; ?> --CLEAN-- Modified: php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c =================================================================== --- php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c 2009-10-19 05:29:50 UTC (rev 289740) +++ php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c 2009-10-19 12:09:48 UTC (rev 289741) @@ -728,11 +728,12 @@ conn->user = pestrdup(user, conn->persistent); conn->passwd = pestrndup(passwd, passwd_len, conn->persistent); conn->port = port; - if (host && !socket) { + + if (!unix_socket) { char *p; conn->host = pestrdup(host, conn->persistent); - spprintf(&p, 0, "MySQL host info: %s via TCP/IP", conn->host); + spprintf(&p, 0, "%s via TCP/IP", conn->host); if (conn->persistent) { conn->host_info = pestrdup(p, 1); mnd_efree(p); @@ -741,7 +742,7 @@ } } else { conn->unix_socket = pestrdup(socket, conn->persistent); - conn->host_info = pestrdup("MySQL host info: Localhost via UNIX socket", conn->persistent); + conn->host_info = pestrdup("Localhost via UNIX socket", conn->persistent); } conn->client_flag = auth_packet->client_flags; conn->max_packet_size = auth_packet->max_packet_size; Modified: php/php-src/trunk/ext/mysqli/tests/mysqli_get_host_info.phpt =================================================================== --- php/php-src/trunk/ext/mysqli/tests/mysqli_get_host_info.phpt 2009-10-19 05:29:50 UTC (rev 289740) +++ php/php-src/trunk/ext/mysqli/tests/mysqli_get_host_info.phpt 2009-10-19 12:09:48 UTC (rev 289741) @@ -20,6 +20,11 @@ if (!is_string($info = mysqli_get_host_info($link)) || ('' === $info)) printf("[003] Expecting string/any_non_empty, got %s/%s\n", gettype($info), $info); + if ($IS_MYSQLND && $host != 'localhost' && $host != '127.0.0.1' && $port != '' && $host != "" && strtoupper(substr(PHP_OS, 0, 3)) != 'WIN') { + /* this should be a TCP/IP connection and not a Unix Socket (or SHM or Named Pipe) */ + if (!stristr($info, "TCP/IP")) + printf("[004] Should be a TCP/IP connection but mysqlnd says '%s'\n", $info); + } print "done!"; ?> --CLEAN-- Modified: php/php-src/trunk/ext/mysqlnd/mysqlnd.c =================================================================== --- php/php-src/trunk/ext/mysqlnd/mysqlnd.c 2009-10-19 05:29:50 UTC (rev 289740) +++ php/php-src/trunk/ext/mysqlnd/mysqlnd.c 2009-10-19 12:09:48 UTC (rev 289741) @@ -728,11 +728,12 @@ conn->user = pestrdup(user, conn->persistent); conn->passwd = pestrndup(passwd, passwd_len, conn->persistent); conn->port = port; - if (host && !socket) { + + if (!unix_socket) { char *p; conn->host = pestrdup(host, conn->persistent); - spprintf(&p, 0, "MySQL host info: %s via TCP/IP", conn->host); + spprintf(&p, 0, "%s via TCP/IP", conn->host); if (conn->persistent) { conn->host_info = pestrdup(p, 1); mnd_efree(p); @@ -741,7 +742,7 @@ } } else { conn->unix_socket = pestrdup(socket, conn->persistent); - conn->host_info = pestrdup("MySQL host info: Localhost via UNIX socket", conn->persistent); + conn->host_info = pestrdup("Localhost via UNIX socket", conn->persistent); } conn->client_flag = auth_packet->client_flags; conn->max_packet_size = auth_packet->max_packet_size;
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php