[php-src] Issue #11438: mysqlnd fails to authenticate with sha256_password accounts using passwords longer than 19 characters.

From: Date: Mon, 12 Jun 2023 14:17:25 +0000
Subject: [php-src] Issue #11438: mysqlnd fails to authenticate with sha256_password accounts using passwords longer than 19 characters.
Groups: php.bugs 
Request: Send a blank email to php-bugs+get-244674@lists.php.net to get a copy of this message
Issue: https://github.com/php/php-src/issues/11438 Author: weigon ### Description The following code: ```php <?php // CREATE USER sha256_20 IDENTIFIED WITH sha256_password BY '01234567890123456789'; // CREATE USER sha256_19 IDENTIFIED WITH sha256_password BY '0123456789012345678'; new mysqli("127.0.0.1", "sha256_19", "0123456789012345678"); new mysqli("127.0.0.1", "sha256_20", "01234567890123456789"); ``` Resulted in this output: ``` PHP Fatal error: Uncaught mysqli_sql_exception: Access denied for user 'sha256_20'@'localhost' (using password: YES) in Command line code:1 Stack trace: #0 Command line code(1): mysqli->__construct() #1 {main} thrown in Command line code on line 1 ``` But I expected this output instead: ``` ``` With the mysql client, authentication works as expected. ``` $ mysqladmin --user=sha256_19 --password=0123456789012345678 ping mysqld is alive $ mysqladmin --user=sha256_20 --password=01234567890123456789 ping mysqld is alive ``` ### PHP Version PHP 8.1.2 ### Operating System Ubuntu 22.04

« previous php.bugs (#244674) next »