reset cached client plugin when it's no longer needed
it's a pointer into the net buffer, so it might be overwritten by the next read or write. And the next plugin switch (in multi-auth) will try to compare it (in send_plugin_request_packet) which is normally harmless but fails the assert with Lex_ident::is_valid_ident()
This commit is contained in:
parent
fd247cc21f
commit
901cb2aa2f
@ -14230,6 +14230,7 @@ static int server_mpvio_write_packet(MYSQL_PLUGIN_VIO *param,
|
||||
res= my_net_write(&mpvio->auth_info.thd->net, packet, packet_len) ||
|
||||
net_flush(&mpvio->auth_info.thd->net);
|
||||
}
|
||||
mpvio->cached_client_reply.plugin= ""_LEX_CSTRING;
|
||||
mpvio->status= MPVIO_EXT::FAILURE; // the status is no longer RESTART
|
||||
mpvio->packets_written++;
|
||||
DBUG_RETURN(res);
|
||||
|
Loading…
x
Reference in New Issue
Block a user