Merge branch 'PHP-7.0' into PHP-7.1

This commit is contained in:
Andrey Hristov 2016-10-17 19:11:54 +03:00
commit 7108db3022
5 changed files with 11 additions and 6 deletions

4
NEWS
View File

@ -46,6 +46,10 @@ PHP NEWS
. Fixed bug #73007 (add locale length check). (Stas) . Fixed bug #73007 (add locale length check). (Stas)
. Fixed bug #73218 (add mitigation for ICU int overflow). (Stas) . Fixed bug #73218 (add mitigation for ICU int overflow). (Stas)
- MySQLi:
. Introduced new constant MYSQLI_OPT_READ_TIMEOUT to overwrite read timeout.
To be used with mysqli_options(). (Andrey)
- OCI8 - OCI8
. Fixed bug #71148 (Bind reference overwritten on PHP 7). (Oracle Corp.) . Fixed bug #71148 (Bind reference overwritten on PHP 7). (Oracle Corp.)

View File

@ -691,6 +691,9 @@ PHP_MINIT_FUNCTION(mysqli)
REGISTER_LONG_CONSTANT("MYSQLI_OPT_CONNECT_TIMEOUT", MYSQL_OPT_CONNECT_TIMEOUT, CONST_CS | CONST_PERSISTENT); REGISTER_LONG_CONSTANT("MYSQLI_OPT_CONNECT_TIMEOUT", MYSQL_OPT_CONNECT_TIMEOUT, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("MYSQLI_OPT_LOCAL_INFILE", MYSQL_OPT_LOCAL_INFILE, CONST_CS | CONST_PERSISTENT); REGISTER_LONG_CONSTANT("MYSQLI_OPT_LOCAL_INFILE", MYSQL_OPT_LOCAL_INFILE, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("MYSQLI_INIT_COMMAND", MYSQL_INIT_COMMAND, CONST_CS | CONST_PERSISTENT); REGISTER_LONG_CONSTANT("MYSQLI_INIT_COMMAND", MYSQL_INIT_COMMAND, CONST_CS | CONST_PERSISTENT);
#if MYSQL_VERSION_ID > 40101 || defined(MYSQLI_USE_MYSQLND)
REGISTER_LONG_CONSTANT("MYSQLI_OPT_READ_TIMEOUT", MYSQL_OPT_READ_TIMEOUT, CONST_CS | CONST_PERSISTENT);
#endif
#if defined(MYSQLI_USE_MYSQLND) #if defined(MYSQLI_USE_MYSQLND)
REGISTER_LONG_CONSTANT("MYSQLI_OPT_NET_CMD_BUFFER_SIZE", MYSQLND_OPT_NET_CMD_BUFFER_SIZE, CONST_CS | CONST_PERSISTENT); REGISTER_LONG_CONSTANT("MYSQLI_OPT_NET_CMD_BUFFER_SIZE", MYSQLND_OPT_NET_CMD_BUFFER_SIZE, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("MYSQLI_OPT_NET_READ_BUFFER_SIZE", MYSQLND_OPT_NET_READ_BUFFER_SIZE, CONST_CS | CONST_PERSISTENT); REGISTER_LONG_CONSTANT("MYSQLI_OPT_NET_READ_BUFFER_SIZE", MYSQLND_OPT_NET_READ_BUFFER_SIZE, CONST_CS | CONST_PERSISTENT);

View File

@ -1712,14 +1712,14 @@ static int mysqli_options_get_option_zval_type(int option)
#ifdef MYSQL_OPT_PROTOCOL #ifdef MYSQL_OPT_PROTOCOL
case MYSQL_OPT_PROTOCOL: case MYSQL_OPT_PROTOCOL:
#endif /* MySQL 4.1.0 */ #endif /* MySQL 4.1.0 */
#ifdef MYSQL_OPT_READ_TIMEOUT #if MYSQL_VERSION_ID > 40101 || defined(MYSQLI_USE_MYSQLND)
case MYSQL_OPT_READ_TIMEOUT: case MYSQL_OPT_READ_TIMEOUT:
case MYSQL_OPT_WRITE_TIMEOUT: case MYSQL_OPT_WRITE_TIMEOUT:
case MYSQL_OPT_GUESS_CONNECTION: case MYSQL_OPT_GUESS_CONNECTION:
case MYSQL_OPT_USE_EMBEDDED_CONNECTION: case MYSQL_OPT_USE_EMBEDDED_CONNECTION:
case MYSQL_OPT_USE_REMOTE_CONNECTION: case MYSQL_OPT_USE_REMOTE_CONNECTION:
case MYSQL_SECURE_AUTH: case MYSQL_SECURE_AUTH:
#endif /* MySQL 4.1.1 */ #endif
#ifdef MYSQL_OPT_RECONNECT #ifdef MYSQL_OPT_RECONNECT
case MYSQL_OPT_RECONNECT: case MYSQL_OPT_RECONNECT:
#endif /* MySQL 5.0.13 */ #endif /* MySQL 5.0.13 */

View File

@ -1676,10 +1676,8 @@ MYSQLND_METHOD(mysqlnd_conn_data, set_client_option)(MYSQLND_CONN_DATA * const c
goto end; goto end;
} }
switch (option) { switch (option) {
#ifdef WHEN_SUPPORTED_BY_MYSQLI
case MYSQL_OPT_READ_TIMEOUT: case MYSQL_OPT_READ_TIMEOUT:
case MYSQL_OPT_WRITE_TIMEOUT: case MYSQL_OPT_WRITE_TIMEOUT:
#endif
case MYSQLND_OPT_SSL_KEY: case MYSQLND_OPT_SSL_KEY:
case MYSQLND_OPT_SSL_CERT: case MYSQLND_OPT_SSL_CERT:
case MYSQLND_OPT_SSL_CA: case MYSQLND_OPT_SSL_CA:

View File

@ -818,13 +818,13 @@ MYSQLND_METHOD(mysqlnd_net, set_client_option)(MYSQLND_NET * const net, enum mys
break; break;
} }
case MYSQL_OPT_READ_TIMEOUT: case MYSQL_OPT_READ_TIMEOUT:
DBG_INF("MYSQL_OPT_READ_TIMEOUT");
net->data->options.timeout_read = *(unsigned int*) value; net->data->options.timeout_read = *(unsigned int*) value;
break; break;
#ifdef WHEN_SUPPORTED_BY_MYSQLI
case MYSQL_OPT_WRITE_TIMEOUT: case MYSQL_OPT_WRITE_TIMEOUT:
DBG_INF("MYSQL_OPT_WRITE_TIMEOUT");
net->data->options.timeout_write = *(unsigned int*) value; net->data->options.timeout_write = *(unsigned int*) value;
break; break;
#endif
case MYSQL_OPT_COMPRESS: case MYSQL_OPT_COMPRESS:
net->data->options.flags |= MYSQLND_NET_FLAG_USE_COMPRESSION; net->data->options.flags |= MYSQLND_NET_FLAG_USE_COMPRESSION;
break; break;