summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexey Botchkov <holyfoot@askmonty.org>2015-06-06 19:12:44 +0500
committerAlexey Botchkov <holyfoot@askmonty.org>2015-06-06 19:12:44 +0500
commitdb0ecf2662c54b1382305908413b45c75f2dfd19 (patch)
tree60e78337f77874d9b72fd3261f173f39b9b22318
parent6264451f25143c43e1ad8e045054b720effaf8cb (diff)
downloadmariadb-git-db0ecf2662c54b1382305908413b45c75f2dfd19.tar.gz
MDEV-8032 [PATCH] audit plugin - csv output broken.
Symbols like TAB or NEWLINE should be escaped, which was forgotten in one place.
-rw-r--r--mysql-test/suite/plugins/r/server_audit.result6
-rw-r--r--mysql-test/suite/plugins/t/server_audit.test3
-rw-r--r--plugin/server_audit/server_audit.c2
3 files changed, 11 insertions, 0 deletions
diff --git a/mysql-test/suite/plugins/r/server_audit.result b/mysql-test/suite/plugins/r/server_audit.result
index c9ec79dbafe..d0649a1fc1f 100644
--- a/mysql-test/suite/plugins/r/server_audit.result
+++ b/mysql-test/suite/plugins/r/server_audit.result
@@ -45,6 +45,11 @@ id
2
alter table t1 rename renamed_t1;
set global server_audit_events='connect,query';
+select 1,
+2,
+3;
+1 2 3
+1 2 3
insert into t2 values (1), (2);
select * from t2;
id
@@ -244,6 +249,7 @@ TIME,HOSTNAME,root,localhost,ID,ID,ALTER,test,t1,
TIME,HOSTNAME,root,localhost,ID,ID,RENAME,test,t1|test.renamed_t1,
TIME,HOSTNAME,root,localhost,ID,ID,QUERY,test,'alter table t1 rename renamed_t1',0
TIME,HOSTNAME,root,localhost,ID,ID,QUERY,test,'set global server_audit_events=\'connect,query\'',0
+TIME,HOSTNAME,root,localhost,ID,ID,QUERY,test,'select 1, 2, 3',0
TIME,HOSTNAME,root,localhost,ID,ID,QUERY,test,'insert into t2 values (1), (2)',0
TIME,HOSTNAME,root,localhost,ID,ID,QUERY,test,'select * from t2',0
TIME,HOSTNAME,root,localhost,ID,ID,QUERY,test,'select * from t_doesnt_exist',ID
diff --git a/mysql-test/suite/plugins/t/server_audit.test b/mysql-test/suite/plugins/t/server_audit.test
index 3c9544d61f4..c126b845def 100644
--- a/mysql-test/suite/plugins/t/server_audit.test
+++ b/mysql-test/suite/plugins/t/server_audit.test
@@ -35,6 +35,9 @@ insert into t2 values (1), (2);
select * from t2;
alter table t1 rename renamed_t1;
set global server_audit_events='connect,query';
+select 1,
+ 2,
+ 3;
insert into t2 values (1), (2);
select * from t2;
--error ER_NO_SUCH_TABLE
diff --git a/plugin/server_audit/server_audit.c b/plugin/server_audit/server_audit.c
index a4d726b0c7d..4aa8652de52 100644
--- a/plugin/server_audit/server_audit.c
+++ b/plugin/server_audit/server_audit.c
@@ -1118,6 +1118,8 @@ static size_t escape_string(const char *str, unsigned int len,
*(result++)= '\\';
*(result++)= '\\';
}
+ else if (is_space(*str))
+ *(result++)= ' ';
else
*(result++)= *str;
str++;