summaryrefslogtreecommitdiff
path: root/ext/pdo_mysql/mysql_driver.c
diff options
context:
space:
mode:
authorDarek Slusarczyk <dariusz.slusarczyk@oracle.com>2019-02-11 18:08:21 +0100
committerDarek Slusarczyk <dariusz.slusarczyk@oracle.com>2019-02-11 18:08:21 +0100
commit83d2bc9b6df2f827217f1bc3298fb83cfe2ac210 (patch)
treed511c4d57e63ff0d0de4e8f17783d62e6deb224b /ext/pdo_mysql/mysql_driver.c
parentec28d4c247ef3c7ab9af41ff6e26b802694492b2 (diff)
parent2eaabf06fc5a62104ecb597830b2852d71b0a111 (diff)
downloadphp-git-83d2bc9b6df2f827217f1bc3298fb83cfe2ac210.tar.gz
Merge branch 'PHP-7.1' into PHP-7.2
Diffstat (limited to 'ext/pdo_mysql/mysql_driver.c')
-rw-r--r--ext/pdo_mysql/mysql_driver.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/ext/pdo_mysql/mysql_driver.c b/ext/pdo_mysql/mysql_driver.c
index 07aaa6f6c1..c0708ceb12 100644
--- a/ext/pdo_mysql/mysql_driver.c
+++ b/ext/pdo_mysql/mysql_driver.c
@@ -502,6 +502,12 @@ static int pdo_mysql_get_attribute(pdo_dbh_t *dbh, zend_long attr, zval *return_
case PDO_MYSQL_ATTR_MAX_BUFFER_SIZE:
ZVAL_LONG(return_value, H->max_buffer_size);
break;
+#else
+ case PDO_MYSQL_ATTR_LOCAL_INFILE:
+ ZVAL_BOOL(
+ return_value,
+ (H->server->data->options->flags & CLIENT_LOCAL_FILES) == CLIENT_LOCAL_FILES);
+ break;
#endif
default:
@@ -786,6 +792,15 @@ static int pdo_mysql_handle_factory(pdo_dbh_t *dbh, zval *driver_options)
}
}
#endif
+ } else {
+#if defined(MYSQL_OPT_LOCAL_INFILE) || defined(PDO_USE_MYSQLND)
+ // in case there are no driver options disable 'local infile' explicitly
+ zend_long local_infile = 0;
+ if (mysql_options(H->server, MYSQL_OPT_LOCAL_INFILE, (const char *)&local_infile)) {
+ pdo_mysql_error(dbh);
+ goto cleanup;
+ }
+#endif
}
#ifdef PDO_MYSQL_HAS_CHARSET