summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Shulga <dmitry.shulga@mariadb.com>2021-04-22 23:21:54 +0700
committerSergei Golubchik <serg@mariadb.org>2021-06-17 19:30:24 +0200
commitd5836a627746f928a8c6127503c1a0f11d8b4726 (patch)
tree533f5e21c1af61aad28b1a598eddee36a4cf7e4e
parent9370c6e83c148b4a5d4f08de7778e6a02da6adcb (diff)
downloadmariadb-git-d5836a627746f928a8c6127503c1a0f11d8b4726.tar.gz
MDEV-16708: Unsupported commands for prepared statements
Extended a set of commands that can be executed as prepared statements by a user with expired password
-rw-r--r--sql/sql_prepare.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/sql/sql_prepare.cc b/sql/sql_prepare.cc
index 1510844a7e7..2ef389011a2 100644
--- a/sql/sql_prepare.cc
+++ b/sql/sql_prepare.cc
@@ -4380,7 +4380,10 @@ bool Prepared_statement::prepare(const char *packet, uint packet_len)
init_param_array(this));
if (thd->security_ctx->password_expired &&
- lex->sql_command != SQLCOM_SET_OPTION)
+ lex->sql_command != SQLCOM_SET_OPTION &&
+ lex->sql_command != SQLCOM_PREPARE &&
+ lex->sql_command != SQLCOM_EXECUTE &&
+ lex->sql_command != SQLCOM_DEALLOCATE_PREPARE)
{
thd->restore_backup_statement(this, &stmt_backup);
thd->restore_active_arena(this, &stmt_backup);