summaryrefslogtreecommitdiff
path: root/ext/mysqlnd
diff options
context:
space:
mode:
authorChristoph M. Becker <cmbecker69@gmx.de>2019-08-02 16:45:08 +0200
committerChristoph M. Becker <cmbecker69@gmx.de>2019-08-02 16:45:29 +0200
commite60c507362b9b3484c1827d4e9f72eb4bdce7825 (patch)
treeb2b03c147a01ed03a72f24b59e82c49e9fcb4409 /ext/mysqlnd
parenta4a535d8ded48012ea0a560946abdeea847aac29 (diff)
parent81efd489db387a6ab3c9bcafdfd65e304cf2ab08 (diff)
downloadphp-git-e60c507362b9b3484c1827d4e9f72eb4bdce7825.tar.gz
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3: Fix #78179: MariaDB server version incorrectly detected
Diffstat (limited to 'ext/mysqlnd')
-rw-r--r--ext/mysqlnd/mysqlnd_connection.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/ext/mysqlnd/mysqlnd_connection.c b/ext/mysqlnd/mysqlnd_connection.c
index b285c9bd52..359aacc55a 100644
--- a/ext/mysqlnd/mysqlnd_connection.c
+++ b/ext/mysqlnd/mysqlnd_connection.c
@@ -1436,6 +1436,14 @@ MYSQLND_METHOD(mysqlnd_conn_data, get_server_version)(const MYSQLND_CONN_DATA *
return 0;
}
+#define MARIA_DB_VERSION_HACK_PREFIX "5.5.5-"
+
+ if (conn->server_capabilities & CLIENT_PLUGIN_AUTH
+ && !strncmp(p, MARIA_DB_VERSION_HACK_PREFIX, sizeof(MARIA_DB_VERSION_HACK_PREFIX)-1))
+ {
+ p += sizeof(MARIA_DB_VERSION_HACK_PREFIX)-1;
+ }
+
major = ZEND_STRTOL(p, &p, 10);
p += 1; /* consume the dot */
minor = ZEND_STRTOL(p, &p, 10);