summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xext/mysql/tests/connect.inc4
-rw-r--r--ext/mysqli/tests/connect.inc4
-rw-r--r--ext/mysqli/tests/mysqli_poll_kill.phpt2
-rw-r--r--ext/mysqlnd/mysqlnd.c8
-rw-r--r--ext/mysqlnd/mysqlnd_result.c2
-rw-r--r--ext/mysqlnd/mysqlnd_wireprotocol.c9
6 files changed, 22 insertions, 7 deletions
diff --git a/ext/mysql/tests/connect.inc b/ext/mysql/tests/connect.inc
index b5cc03ecb4..97fed42146 100755
--- a/ext/mysql/tests/connect.inc
+++ b/ext/mysql/tests/connect.inc
@@ -69,7 +69,9 @@ $engine = getenv("MYSQL_TEST_ENGINE") ? getenv("MYSQL_TEST_ENGINE") : "MyISAM";
$socket = getenv("MYSQL_TEST_SOCKET") ? getenv("MYSQL_TEST_SOCKET") : null;
$skip_on_connect_failure = getenv("MYSQL_TEST_SKIP_CONNECT_FAILURE") ? getenv("MYSQL_TEST_SKIP_CONNECT_FAILURE") : true;
$connect_flags = getenv("MYSQL_TEST_CONNECT_FLAGS") ? (int)getenv("MYSQL_TEST_CONNECT_FLAGS") : 0;
-
+if ($socket) {
+ ini_set('mysql.default_user', $socket);
+}
/* Development setting: test experimal features and/or feature requests that never worked before? */
$TEST_EXPERIMENTAL = (in_array(getenv("MYSQL_TEST_EXPERIMENTAL"), array(0, 1))) ?
((1 == getenv("MYSQL_TEST_EXPERIMENTAL")) ? true : false) :
diff --git a/ext/mysqli/tests/connect.inc b/ext/mysqli/tests/connect.inc
index 48ba893ccc..92caa25e93 100644
--- a/ext/mysqli/tests/connect.inc
+++ b/ext/mysqli/tests/connect.inc
@@ -17,7 +17,9 @@
$socket = getenv("MYSQL_TEST_SOCKET") ? getenv("MYSQL_TEST_SOCKET") : null;
$skip_on_connect_failure = getenv("MYSQL_TEST_SKIP_CONNECT_FAILURE") ? getenv("MYSQL_TEST_SKIP_CONNECT_FAILURE") : true;
$connect_flags = getenv("MYSQL_TEST_CONNECT_FLAGS") ? (int)getenv("MYSQL_TEST_CONNECT_FLAGS") : 0;
-
+ if ($socket) {
+ ini_set('mysqli.default_socket', $socket);
+ }
/* Development setting: test experimal features and/or feature requests that never worked before? */
$TEST_EXPERIMENTAL = (in_array(getenv("MYSQL_TEST_EXPERIMENTAL"), array(0, 1))) ?
((1 == getenv("MYSQL_TEST_EXPERIMENTAL")) ? true : false) :
diff --git a/ext/mysqli/tests/mysqli_poll_kill.phpt b/ext/mysqli/tests/mysqli_poll_kill.phpt
index 73382b7301..fa70f68cdb 100644
--- a/ext/mysqli/tests/mysqli_poll_kill.phpt
+++ b/ext/mysqli/tests/mysqli_poll_kill.phpt
@@ -183,7 +183,7 @@ array(1) {
%unicode|string%(1) "1"
}
-Warning: mysqli_reap_async_query(): GREET %s
+Warning: mysqli_reap_async_query(): RSET_HEADER %
Warning: mysqli_reap_async_query(): MySQL server has gone away in %s on line %d
[014] 2014/%s
diff --git a/ext/mysqlnd/mysqlnd.c b/ext/mysqlnd/mysqlnd.c
index 3a31a1d7e6..4f89b8c57e 100644
--- a/ext/mysqlnd/mysqlnd.c
+++ b/ext/mysqlnd/mysqlnd.c
@@ -516,20 +516,24 @@ MYSQLND_METHOD(mysqlnd_conn, connect)(MYSQLND *conn,
if (!host || !host[0]) {
host = "localhost";
}
- if (!user || !user[0]) {
- user = php_get_current_user();
+ if (!user) {
+ DBG_INF_FMT("no user given, using empty string");
+ user = "";
}
if (!passwd) {
+ DBG_INF_FMT("no password given, using empty string");
passwd = "";
passwd_len = 0;
}
if (!db) {
+ DBG_INF_FMT("no db given, using empty string");
db = "";
db_len = 0;
}
host_len = strlen(host);
#ifndef PHP_WIN32
if (host_len == sizeof("localhost") - 1 && !strncasecmp(host, "localhost", host_len)) {
+ DBG_INF_FMT("socket=%s", socket? socket:"n/a");
if (!socket) {
socket = "/tmp/mysql.sock";
}
diff --git a/ext/mysqlnd/mysqlnd_result.c b/ext/mysqlnd/mysqlnd_result.c
index ac3761868b..224b590d54 100644
--- a/ext/mysqlnd/mysqlnd_result.c
+++ b/ext/mysqlnd/mysqlnd_result.c
@@ -470,7 +470,7 @@ mysqlnd_query_read_result_set_header(MYSQLND *conn, MYSQLND_STMT * s TSRMLS_DC)
if (FAIL == (ret = result->m.read_result_metadata(result, conn TSRMLS_CC))) {
/* For PS, we leave them in Prepared state */
- if (!stmt) {
+ if (!stmt && conn->current_result) {
mnd_efree(conn->current_result);
conn->current_result = NULL;
}
diff --git a/ext/mysqlnd/mysqlnd_wireprotocol.c b/ext/mysqlnd/mysqlnd_wireprotocol.c
index ea41a9a137..0966683565 100644
--- a/ext/mysqlnd/mysqlnd_wireprotocol.c
+++ b/ext/mysqlnd/mysqlnd_wireprotocol.c
@@ -353,6 +353,7 @@ php_mysqlnd_greet_read(void *_packet, MYSQLND *conn TSRMLS_DC)
DBG_ERR_FMT("GREET packet %d bytes shorter than expected", p - begin - packet->header.size);
php_error_docref(NULL TSRMLS_CC, E_WARNING, "GREET packet "MYSQLND_SZ_T_SPEC" bytes shorter than expected",
p - begin - packet->header.size);
+ DBG_RETURN(FAIL);
}
DBG_RETURN(PASS);
@@ -554,6 +555,7 @@ php_mysqlnd_ok_read(void *_packet, MYSQLND *conn TSRMLS_DC)
DBG_ERR_FMT("OK packet %d bytes shorter than expected", p - begin - packet->header.size);
php_error_docref(NULL TSRMLS_CC, E_WARNING, "OK packet "MYSQLND_SZ_T_SPEC" bytes shorter than expected",
p - begin - packet->header.size);
+ DBG_RETURN(FAIL);
}
DBG_RETURN(PASS);
@@ -628,6 +630,7 @@ php_mysqlnd_eof_read(void *_packet, MYSQLND *conn TSRMLS_DC)
DBG_ERR_FMT("EOF packet %d bytes shorter than expected", p - begin - packet->header.size);
php_error_docref(NULL TSRMLS_CC, E_WARNING, "EOF packet "MYSQLND_SZ_T_SPEC" bytes shorter than expected",
p - begin - packet->header.size);
+ DBG_RETURN(FAIL);
}
DBG_INF_FMT("EOF packet: fields=%d status=%d warnings=%d",
@@ -788,8 +791,9 @@ php_mysqlnd_rset_header_read(void *_packet, MYSQLND *conn TSRMLS_DC)
}
if (p - begin > packet->header.size) {
DBG_ERR_FMT("RSET_HEADER packet %d bytes shorter than expected", p - begin - packet->header.size);
- php_error_docref(NULL TSRMLS_CC, E_WARNING, "GREET packet "MYSQLND_SZ_T_SPEC" bytes shorter than expected",
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "RSET_HEADER packet "MYSQLND_SZ_T_SPEC" bytes shorter than expected",
p - begin - packet->header.size);
+ DBG_RETURN(FAIL);
}
DBG_RETURN(PASS);
@@ -941,6 +945,7 @@ php_mysqlnd_rset_field_read(void *_packet, MYSQLND *conn TSRMLS_DC)
DBG_ERR_FMT("RSET field packet %d bytes shorter than expected", p - begin - packet->header.size);
php_error_docref(NULL TSRMLS_CC, E_WARNING, "Result set field packet "MYSQLND_SZ_T_SPEC" bytes "
"shorter than expected", p - begin - packet->header.size);
+ DBG_RETURN(FAIL);
}
DBG_INF_FMT("allocing root. persistent=%d", packet->persistent_alloc);
@@ -1634,6 +1639,7 @@ php_mysqlnd_prepare_read(void *_packet, MYSQLND *conn TSRMLS_DC)
DBG_ERR_FMT("PREPARE packet %d bytes shorter than expected", p - begin - packet->header.size);
php_error_docref(NULL TSRMLS_CC, E_WARNING, "PREPARE packet "MYSQLND_SZ_T_SPEC" bytes shorter than expected",
p - begin - packet->header.size);
+ DBG_RETURN(FAIL);
}
DBG_RETURN(PASS);
@@ -1694,6 +1700,7 @@ php_mysqlnd_chg_user_read(void *_packet, MYSQLND *conn TSRMLS_DC)
DBG_ERR_FMT("CHANGE_USER packet %d bytes shorter than expected", p - begin - packet->header.size);
php_error_docref(NULL TSRMLS_CC, E_WARNING, "CHANGE_USER packet "MYSQLND_SZ_T_SPEC" bytes shorter than expected",
p - begin - packet->header.size);
+ DBG_RETURN(FAIL);
}
DBG_RETURN(PASS);