diff --git a/sql/auth/sql_authentication.cc b/sql/auth/sql_authentication.cc index 0936081f1e5..02b0e7ff803 100644 --- a/sql/auth/sql_authentication.cc +++ b/sql/auth/sql_authentication.cc @@ -1067,6 +1067,7 @@ static bool parse_com_change_user_packet(MPVIO_EXT *mpvio, size_t packet_length) { if (mpvio->charset_adapter->init_client_charset(uint2korr(ptr))) DBUG_RETURN(1); + ptr= ptr + 2; } /* Convert database and user names to utf8 */ @@ -1110,12 +1111,13 @@ static bool parse_com_change_user_packet(MPVIO_EXT *mpvio, size_t packet_length) const char *client_plugin; if (protocol->has_client_capability(CLIENT_PLUGIN_AUTH)) { - client_plugin= ptr + 2; + client_plugin= ptr; if (client_plugin >= end) { my_message(ER_UNKNOWN_COM_ERROR, ER(ER_UNKNOWN_COM_ERROR), MYF(0)); DBUG_RETURN(1); } + ptr= ptr + strlen(client_plugin) + 1; } else client_plugin= native_password_plugin_name.str;