From a1c1736bfb88d006542dc9bcc10d7101617517a6 Mon Sep 17 00:00:00 2001 From: guirish Date: Fri, 10 Apr 2020 05:45:40 -0400 Subject: Fix MySQL local infile / attr handling on big endian systems Make sure pointer types match what is used by libmysql everywhere. Closes GH-5380. --- ext/mysqli/mysqli_api.c | 6 +++--- ext/mysqli/mysqli_nonapi.c | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) (limited to 'ext/mysqli') diff --git a/ext/mysqli/mysqli_api.c b/ext/mysqli/mysqli_api.c index c4ed1bf543..8632971893 100644 --- a/ext/mysqli/mysqli_api.c +++ b/ext/mysqli/mysqli_api.c @@ -2327,7 +2327,7 @@ PHP_FUNCTION(mysqli_stmt_attr_set) #if MYSQL_VERSION_ID >= 50107 my_bool mode_b; #endif - zend_ulong mode; + unsigned long mode; zend_long attr; void *mode_p; @@ -2370,7 +2370,7 @@ PHP_FUNCTION(mysqli_stmt_attr_get) { MY_STMT *stmt; zval *mysql_stmt; - zend_ulong value = 0; + unsigned long value = 0; zend_long attr; int rc; @@ -2387,7 +2387,7 @@ PHP_FUNCTION(mysqli_stmt_attr_get) if (attr == STMT_ATTR_UPDATE_MAX_LENGTH) value = *((my_bool *)&value); #endif - RETURN_LONG((zend_ulong)value); + RETURN_LONG((unsigned long)value); } /* }}} */ diff --git a/ext/mysqli/mysqli_nonapi.c b/ext/mysqli/mysqli_nonapi.c index 0f5714bf21..4736e4fcb2 100644 --- a/ext/mysqli/mysqli_nonapi.c +++ b/ext/mysqli/mysqli_nonapi.c @@ -305,8 +305,8 @@ void mysqli_common_connect(INTERNAL_FUNCTION_PARAMETERS, zend_bool is_real_conne #if !defined(MYSQLI_USE_MYSQLND) mysql->mysql->reconnect = MyG(reconnect); #endif - - mysql_options(mysql->mysql, MYSQL_OPT_LOCAL_INFILE, (char *)&MyG(allow_local_infile)); + unsigned int allow_local_infile = MyG(allow_local_infile); + mysql_options(mysql->mysql, MYSQL_OPT_LOCAL_INFILE, (char *)&allow_local_infile); end: if (!mysqli_resource) { -- cgit v1.2.1