mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Bug #11766641: 59792: BIN/MYSQL -UUNKNOWN -PUNKNOWN
.-> USING PASSWORD: NO The server was always setting the flag for using password to NO and then relying on the server authentication plugin to update it if it uses a password. This creates compatibility problems with 5.1 when rejecting a nonexistent user login. Set the default for the password supplied flag for non-existing users as the default plugin (native password authentication) would do it for compatibility reasons. Test case added. federated.result updated with the correct error message.
This commit is contained in:
@ -8232,7 +8232,7 @@ static bool find_mpvio_user(MPVIO_EXT *mpvio)
|
||||
|
||||
if (!mpvio->acl_user)
|
||||
{
|
||||
login_failed_error(mpvio, 0);
|
||||
login_failed_error(mpvio, mpvio->auth_info.password_used);
|
||||
DBUG_RETURN (1);
|
||||
}
|
||||
|
||||
@ -8680,6 +8680,14 @@ static ulong parse_client_handshake_packet(MPVIO_EXT *mpvio,
|
||||
return packet_error;
|
||||
}
|
||||
|
||||
/*
|
||||
Set the default for the password supplied flag for non-existing users
|
||||
as the default plugin (native passsword authentication) would do it
|
||||
for compatibility reasons.
|
||||
*/
|
||||
if (passwd_len)
|
||||
mpvio->auth_info.password_used= PASSWORD_USED_YES;
|
||||
|
||||
size_t client_plugin_len= 0;
|
||||
char *client_plugin= get_string(&end, &bytes_remaining_in_packet,
|
||||
&client_plugin_len);
|
||||
|
Reference in New Issue
Block a user