mirror of
https://github.com/MariaDB/server.git
synced 2026-05-03 05:35:31 +02:00
Bug#28779 (mysql_query() allows execution of statements with unbalanced
comments)
This change set is for 5.1 (manually merged)
Before this fix, the server would accept queries that contained comments,
even when the comments were not properly closed with a '*' '/' marker.
For example,
select 1 /* + 2 <EOF>
would be accepted as
select 1 /* + 2 */ <EOF>
and executed as
select 1
With this fix, the server now rejects queries with unclosed comments
as syntax errors.
Both regular comments ('/' '*') and special comments ('/' '*' '!') must be
closed with '*' '/' to be parsed correctly.
mysql-test/r/comments.result:
Unbalanced comments are a syntax error.
mysql-test/t/comments.test:
Unbalanced comments are a syntax error.
sql/sql_lex.cc:
Unbalanced comments are a syntax error.
This commit is contained in:
parent
db56cb5b86
commit
41a2f1c8de
3 changed files with 81 additions and 8 deletions
|
|
@ -34,3 +34,34 @@ select 1/*!999992*/;
|
|||
|
||||
select 1 + /*!00000 2 */ + 3 /*!99999 noise*/ + 4;
|
||||
|
||||
#
|
||||
# Bug#28779 (mysql_query() allows execution of statements with unbalanced
|
||||
# comments)
|
||||
#
|
||||
|
||||
--disable_warnings
|
||||
drop table if exists table_28779;
|
||||
--enable_warnings
|
||||
|
||||
create table table_28779 (a int);
|
||||
|
||||
--error 1064
|
||||
prepare bar from "DELETE FROM table_28779 WHERE a = 7 OR 1=1/*' AND b = 'bar';";
|
||||
|
||||
--error 1064
|
||||
prepare bar from "DELETE FROM table_28779 WHERE a = 7 OR 1=1/*' AND b = 'bar';*";
|
||||
|
||||
--error 1064
|
||||
prepare bar from "DELETE FROM table_28779 WHERE a = 7 OR 1=1/*! AND 2=2;";
|
||||
|
||||
--error 1064
|
||||
prepare bar from "DELETE FROM table_28779 WHERE a = 7 OR 1=1/*! AND 2=2;*";
|
||||
|
||||
--error 1064
|
||||
prepare bar from "DELETE FROM table_28779 WHERE a = 7 OR 1=1/*!98765' AND b = 'bar';";
|
||||
|
||||
--error 1064
|
||||
prepare bar from "DELETE FROM table_28779 WHERE a = 7 OR 1=1/*!98765' AND b = 'bar';*";
|
||||
|
||||
drop table table_28779;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue