tests for file_key_management plugin key file parser
This commit is contained in:
parent
e02749aaf5
commit
c91e3260e2
@ -1,6 +1,12 @@
|
||||
#
|
||||
# this is a comment
|
||||
#
|
||||
1;770A8A65DA156D24EE2A093277530142
|
||||
2;4D92199549E0F2EF009B4160F3582E5528A11A45017F3EF8
|
||||
3;B374A26A71490437AA024E4FADD5B497FDFF1A8EA6FF12F6FB65AF2720B59CCF
|
||||
4;18420B5CBA31CCDFFE9716E91EB61374D05914F3ADE23E03
|
||||
# another comment
|
||||
33;B374A26A71490437AA024E4FADD5B497FDFF1A8EA6FF12F6FB65AF2720B59CCF
|
||||
4;18420B5CBA31CCDFFE9716E91EB61374D05914F3ADE23E03 --> ignored
|
||||
|
||||
5;966050D7777350B6FD5CCB3E5F648DA45C63BEFB6DEDDFA13443F156B7D35C84
|
||||
6;B5EA210C8C09EF20DB95EC584714A89F
|
||||
6;B5EA210C8C09EF20DB95EC584714A89F # and yet another
|
||||
|
||||
|
@ -4,6 +4,8 @@ create table innodb_normal(c1 bigint not null, b char(200)) engine=innodb;
|
||||
create table innodb_compact(c1 bigint not null, b char(200)) engine=innodb row_format=compact page_encryption=1 page_encryption_key=1;
|
||||
create table innodb_compressed(c1 bigint not null, b char(200)) engine=innodb row_format=compressed page_encryption=1 page_encryption_key=2;
|
||||
create table innodb_dynamic(c1 bigint not null, b char(200)) engine=innodb row_format=dynamic page_encryption=1 page_encryption_key=3;
|
||||
ERROR HY000: Can't create table `test`.`innodb_dynamic` (errno: 140 "Wrong create options")
|
||||
create table innodb_dynamic(c1 bigint not null, b char(200)) engine=innodb row_format=dynamic page_encryption=1 page_encryption_key=33;
|
||||
create table innodb_redundant(c1 bigint not null, b char(200)) engine=innodb row_format=redundant page_encryption=1 page_encryption_key=4;
|
||||
SET GLOBAL innodb_default_page_encryption_key = 5;
|
||||
create table innodb_defkey(c1 bigint not null, b char(200)) engine=innodb page_encryption=1;
|
||||
@ -30,7 +32,7 @@ Table Create Table
|
||||
innodb_dynamic CREATE TABLE `innodb_dynamic` (
|
||||
`c1` bigint(20) NOT NULL,
|
||||
`b` char(200) DEFAULT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC `page_encryption`=1 `page_encryption_key`=3
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC `page_encryption`=1 `page_encryption_key`=33
|
||||
show create table innodb_redundant;
|
||||
Table Create Table
|
||||
innodb_redundant CREATE TABLE `innodb_redundant` (
|
||||
|
@ -6,7 +6,7 @@ SET GLOBAL innodb_file_per_table = ON;
|
||||
create table innodb_normal(c1 bigint not null, b char(200)) engine=innodb;
|
||||
create table innodb_compact(c1 bigint not null, b char(200)) engine=innodb row_format=compact page_encryption=1 page_encryption_key=1;
|
||||
create table innodb_compressed(c1 bigint not null, b char(200)) engine=innodb row_format=compressed page_encryption=1 page_encryption_key=2;
|
||||
create table innodb_dynamic(c1 bigint not null, b char(200)) engine=innodb row_format=dynamic page_encryption=1 page_encryption_key=3;
|
||||
create table innodb_dynamic(c1 bigint not null, b char(200)) engine=innodb row_format=dynamic page_encryption=1 page_encryption_key=33;
|
||||
create table innodb_redundant(c1 bigint not null, b char(200)) engine=innodb row_format=redundant page_encryption=1 page_encryption_key=4;
|
||||
show create table innodb_compact;
|
||||
Table Create Table
|
||||
@ -25,7 +25,7 @@ Table Create Table
|
||||
innodb_dynamic CREATE TABLE `innodb_dynamic` (
|
||||
`c1` bigint(20) NOT NULL,
|
||||
`b` char(200) DEFAULT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC `page_encryption`=1 `page_encryption_key`=3
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC `page_encryption`=1 `page_encryption_key`=33
|
||||
show create table innodb_redundant;
|
||||
Table Create Table
|
||||
innodb_redundant CREATE TABLE `innodb_redundant` (
|
||||
|
@ -13,7 +13,9 @@ SET GLOBAL innodb_file_per_table = ON;
|
||||
create table innodb_normal(c1 bigint not null, b char(200)) engine=innodb;
|
||||
create table innodb_compact(c1 bigint not null, b char(200)) engine=innodb row_format=compact page_encryption=1 page_encryption_key=1;
|
||||
create table innodb_compressed(c1 bigint not null, b char(200)) engine=innodb row_format=compressed page_encryption=1 page_encryption_key=2;
|
||||
--error ER_CANT_CREATE_TABLE
|
||||
create table innodb_dynamic(c1 bigint not null, b char(200)) engine=innodb row_format=dynamic page_encryption=1 page_encryption_key=3;
|
||||
create table innodb_dynamic(c1 bigint not null, b char(200)) engine=innodb row_format=dynamic page_encryption=1 page_encryption_key=33;
|
||||
create table innodb_redundant(c1 bigint not null, b char(200)) engine=innodb row_format=redundant page_encryption=1 page_encryption_key=4;
|
||||
|
||||
SET GLOBAL innodb_default_page_encryption_key = 5;
|
||||
|
@ -16,7 +16,7 @@ SET GLOBAL innodb_file_per_table = ON;
|
||||
create table innodb_normal(c1 bigint not null, b char(200)) engine=innodb;
|
||||
create table innodb_compact(c1 bigint not null, b char(200)) engine=innodb row_format=compact page_encryption=1 page_encryption_key=1;
|
||||
create table innodb_compressed(c1 bigint not null, b char(200)) engine=innodb row_format=compressed page_encryption=1 page_encryption_key=2;
|
||||
create table innodb_dynamic(c1 bigint not null, b char(200)) engine=innodb row_format=dynamic page_encryption=1 page_encryption_key=3;
|
||||
create table innodb_dynamic(c1 bigint not null, b char(200)) engine=innodb row_format=dynamic page_encryption=1 page_encryption_key=33;
|
||||
create table innodb_redundant(c1 bigint not null, b char(200)) engine=innodb row_format=redundant page_encryption=1 page_encryption_key=4;
|
||||
|
||||
show create table innodb_compact;
|
||||
|
38
mysql-test/suite/plugins/r/filekeys_encfile.result
Normal file
38
mysql-test/suite/plugins/r/filekeys_encfile.result
Normal file
@ -0,0 +1,38 @@
|
||||
create table t1(c1 bigint not null, b char(200)) engine=innodb page_encryption=1 page_encryption_key=1;
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`c1` bigint(20) NOT NULL,
|
||||
`b` char(200) DEFAULT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1 `page_encryption`=1 `page_encryption_key`=1
|
||||
insert t1 values (12345, repeat('1234567890', 20));
|
||||
alter table t1 page_encryption_key=2;
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`c1` bigint(20) NOT NULL,
|
||||
`b` char(200) DEFAULT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1 `page_encryption`=1 `page_encryption_key`=2
|
||||
alter table t1 page_encryption_key=3;
|
||||
ERROR HY000: Can't create table `test`.`#sql-temporary` (errno: 140 "Wrong create options")
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`c1` bigint(20) NOT NULL,
|
||||
`b` char(200) DEFAULT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1 `page_encryption`=1 `page_encryption_key`=2
|
||||
alter table t1 page_encryption_key=33;
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`c1` bigint(20) NOT NULL,
|
||||
`b` char(200) DEFAULT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1 `page_encryption`=1 `page_encryption_key`=33
|
||||
alter table t1 page_encryption_key=4;
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`c1` bigint(20) NOT NULL,
|
||||
`b` char(200) DEFAULT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1 `page_encryption`=1 `page_encryption_key`=4
|
||||
drop table t1;
|
8
mysql-test/suite/plugins/r/filekeys_encfile_bad.result
Normal file
8
mysql-test/suite/plugins/r/filekeys_encfile_bad.result
Normal file
@ -0,0 +1,8 @@
|
||||
call mtr.add_suppression("Cannot decrypt .*filekeys-data.enc. Wrong key");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' init function returned error");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' registration.*failed");
|
||||
create table t1(c1 bigint not null, b char(200)) engine=innodb page_encryption=1 page_encryption_key=1;
|
||||
ERROR HY000: Can't create table `test`.`t1` (errno: 140 "Wrong create options")
|
||||
select plugin_status from information_schema.plugins
|
||||
where plugin_name = 'file_key_management';
|
||||
plugin_status
|
@ -0,0 +1,8 @@
|
||||
call mtr.add_suppression("File 'bad' not found");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' init function returned error");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' registration.*failed");
|
||||
create table t1(c1 bigint not null, b char(200)) engine=innodb page_encryption=1 page_encryption_key=1;
|
||||
ERROR HY000: Can't create table `test`.`t1` (errno: 140 "Wrong create options")
|
||||
select plugin_status from information_schema.plugins
|
||||
where plugin_name = 'file_key_management';
|
||||
plugin_status
|
38
mysql-test/suite/plugins/r/filekeys_encfile_file.result
Normal file
38
mysql-test/suite/plugins/r/filekeys_encfile_file.result
Normal file
@ -0,0 +1,38 @@
|
||||
create table t1(c1 bigint not null, b char(200)) engine=innodb page_encryption=1 page_encryption_key=1;
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`c1` bigint(20) NOT NULL,
|
||||
`b` char(200) DEFAULT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1 `page_encryption`=1 `page_encryption_key`=1
|
||||
insert t1 values (12345, repeat('1234567890', 20));
|
||||
alter table t1 page_encryption_key=2;
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`c1` bigint(20) NOT NULL,
|
||||
`b` char(200) DEFAULT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1 `page_encryption`=1 `page_encryption_key`=2
|
||||
alter table t1 page_encryption_key=3;
|
||||
ERROR HY000: Can't create table `test`.`#sql-temporary` (errno: 140 "Wrong create options")
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`c1` bigint(20) NOT NULL,
|
||||
`b` char(200) DEFAULT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1 `page_encryption`=1 `page_encryption_key`=2
|
||||
alter table t1 page_encryption_key=33;
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`c1` bigint(20) NOT NULL,
|
||||
`b` char(200) DEFAULT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1 `page_encryption`=1 `page_encryption_key`=33
|
||||
alter table t1 page_encryption_key=4;
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`c1` bigint(20) NOT NULL,
|
||||
`b` char(200) DEFAULT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1 `page_encryption`=1 `page_encryption_key`=4
|
||||
drop table t1;
|
8
mysql-test/suite/plugins/r/filekeys_encfile_no.result
Normal file
8
mysql-test/suite/plugins/r/filekeys_encfile_no.result
Normal file
@ -0,0 +1,8 @@
|
||||
call mtr.add_suppression("Cannot decrypt .*filekeys-data.enc. Wrong key");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' init function returned error");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' registration.*failed");
|
||||
create table t1(c1 bigint not null, b char(200)) engine=innodb page_encryption=1 page_encryption_key=1;
|
||||
ERROR HY000: Can't create table `test`.`t1` (errno: 140 "Wrong create options")
|
||||
select plugin_status from information_schema.plugins
|
||||
where plugin_name = 'file_key_management';
|
||||
plugin_status
|
8
mysql-test/suite/plugins/r/filekeys_nofile.result
Normal file
8
mysql-test/suite/plugins/r/filekeys_nofile.result
Normal file
@ -0,0 +1,8 @@
|
||||
call mtr.add_suppression("File '' not found");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' init function returned error");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' registration.*failed");
|
||||
create table t1(c1 bigint not null, b char(200)) engine=innodb page_encryption=1 page_encryption_key=1;
|
||||
ERROR HY000: Can't create table `test`.`t1` (errno: 140 "Wrong create options")
|
||||
select plugin_status from information_schema.plugins
|
||||
where plugin_name = 'file_key_management';
|
||||
plugin_status
|
116
mysql-test/suite/plugins/r/filekeys_syntax.result
Normal file
116
mysql-test/suite/plugins/r/filekeys_syntax.result
Normal file
@ -0,0 +1,116 @@
|
||||
call mtr.add_suppression("File '.*keys.txt' not found");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' init function returned error");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' registration.*failed");
|
||||
create table t1(c1 bigint not null, b char(200)) engine=innodb page_encryption=1 page_encryption_key=1;
|
||||
ERROR HY000: Can't create table `test`.`t1` (errno: 140 "Wrong create options")
|
||||
select plugin_status from information_schema.plugins
|
||||
where plugin_name = 'file_key_management';
|
||||
plugin_status
|
||||
install soname 'file_key_management';
|
||||
ERROR HY000: Invalid key id at MYSQL_TMP_DIR/keys.txt line 2, column 2
|
||||
call mtr.add_suppression("File '.*keys.txt' not found");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' init function returned error");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' registration.*failed");
|
||||
create table t1(c1 bigint not null, b char(200)) engine=innodb page_encryption=1 page_encryption_key=1;
|
||||
ERROR HY000: Can't create table `test`.`t1` (errno: 140 "Wrong create options")
|
||||
select plugin_status from information_schema.plugins
|
||||
where plugin_name = 'file_key_management';
|
||||
plugin_status
|
||||
call mtr.add_suppression("Invalid key id");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' init function returned error");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' registration.*failed");
|
||||
create table t1(c1 bigint not null, b char(200)) engine=innodb page_encryption=1 page_encryption_key=1;
|
||||
ERROR HY000: Can't create table `test`.`t1` (errno: 140 "Wrong create options")
|
||||
select plugin_status from information_schema.plugins
|
||||
where plugin_name = 'file_key_management';
|
||||
plugin_status
|
||||
install soname 'file_key_management';
|
||||
ERROR HY000: Invalid key id at MYSQL_TMP_DIR/keys.txt line 2, column 11
|
||||
call mtr.add_suppression("Invalid key id");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' init function returned error");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' registration.*failed");
|
||||
create table t1(c1 bigint not null, b char(200)) engine=innodb page_encryption=1 page_encryption_key=1;
|
||||
ERROR HY000: Can't create table `test`.`t1` (errno: 140 "Wrong create options")
|
||||
select plugin_status from information_schema.plugins
|
||||
where plugin_name = 'file_key_management';
|
||||
plugin_status
|
||||
call mtr.add_suppression("Invalid key id");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' init function returned error");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' registration.*failed");
|
||||
create table t1(c1 bigint not null, b char(200)) engine=innodb page_encryption=1 page_encryption_key=1;
|
||||
ERROR HY000: Can't create table `test`.`t1` (errno: 140 "Wrong create options")
|
||||
select plugin_status from information_schema.plugins
|
||||
where plugin_name = 'file_key_management';
|
||||
plugin_status
|
||||
install soname 'file_key_management';
|
||||
ERROR HY000: Invalid key at MYSQL_TMP_DIR/keys.txt line 2, column 47
|
||||
call mtr.add_suppression("Invalid key id");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' init function returned error");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' registration.*failed");
|
||||
create table t1(c1 bigint not null, b char(200)) engine=innodb page_encryption=1 page_encryption_key=1;
|
||||
ERROR HY000: Can't create table `test`.`t1` (errno: 140 "Wrong create options")
|
||||
select plugin_status from information_schema.plugins
|
||||
where plugin_name = 'file_key_management';
|
||||
plugin_status
|
||||
call mtr.add_suppression("Invalid key");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' init function returned error");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' registration.*failed");
|
||||
create table t1(c1 bigint not null, b char(200)) engine=innodb page_encryption=1 page_encryption_key=1;
|
||||
ERROR HY000: Can't create table `test`.`t1` (errno: 140 "Wrong create options")
|
||||
select plugin_status from information_schema.plugins
|
||||
where plugin_name = 'file_key_management';
|
||||
plugin_status
|
||||
install soname 'file_key_management';
|
||||
ERROR HY000: Invalid key at MYSQL_TMP_DIR/keys.txt line 2, column 33
|
||||
call mtr.add_suppression("Invalid key");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' init function returned error");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' registration.*failed");
|
||||
create table t1(c1 bigint not null, b char(200)) engine=innodb page_encryption=1 page_encryption_key=1;
|
||||
ERROR HY000: Can't create table `test`.`t1` (errno: 140 "Wrong create options")
|
||||
select plugin_status from information_schema.plugins
|
||||
where plugin_name = 'file_key_management';
|
||||
plugin_status
|
||||
call mtr.add_suppression("Invalid key");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' init function returned error");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' registration.*failed");
|
||||
create table t1(c1 bigint not null, b char(200)) engine=innodb page_encryption=1 page_encryption_key=1;
|
||||
ERROR HY000: Can't create table `test`.`t1` (errno: 140 "Wrong create options")
|
||||
select plugin_status from information_schema.plugins
|
||||
where plugin_name = 'file_key_management';
|
||||
plugin_status
|
||||
install soname 'file_key_management';
|
||||
ERROR HY000: Syntax error at MYSQL_TMP_DIR/keys.txt line 2, column 2
|
||||
call mtr.add_suppression("Invalid key");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' init function returned error");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' registration.*failed");
|
||||
create table t1(c1 bigint not null, b char(200)) engine=innodb page_encryption=1 page_encryption_key=1;
|
||||
ERROR HY000: Can't create table `test`.`t1` (errno: 140 "Wrong create options")
|
||||
select plugin_status from information_schema.plugins
|
||||
where plugin_name = 'file_key_management';
|
||||
plugin_status
|
||||
call mtr.add_suppression("Syntax error");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' init function returned error");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' registration.*failed");
|
||||
create table t1(c1 bigint not null, b char(200)) engine=innodb page_encryption=1 page_encryption_key=1;
|
||||
ERROR HY000: Can't create table `test`.`t1` (errno: 140 "Wrong create options")
|
||||
select plugin_status from information_schema.plugins
|
||||
where plugin_name = 'file_key_management';
|
||||
plugin_status
|
||||
install soname 'file_key_management';
|
||||
ERROR HY000: Syntax error at MYSQL_TMP_DIR/keys.txt line 2, column 1
|
||||
call mtr.add_suppression("Syntax error");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' init function returned error");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' registration.*failed");
|
||||
create table t1(c1 bigint not null, b char(200)) engine=innodb page_encryption=1 page_encryption_key=1;
|
||||
ERROR HY000: Can't create table `test`.`t1` (errno: 140 "Wrong create options")
|
||||
select plugin_status from information_schema.plugins
|
||||
where plugin_name = 'file_key_management';
|
||||
plugin_status
|
||||
call mtr.add_suppression("Syntax error");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' init function returned error");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' registration.*failed");
|
||||
create table t1(c1 bigint not null, b char(200)) engine=innodb page_encryption=1 page_encryption_key=1;
|
||||
ERROR HY000: Can't create table `test`.`t1` (errno: 140 "Wrong create options")
|
||||
select plugin_status from information_schema.plugins
|
||||
where plugin_name = 'file_key_management';
|
||||
plugin_status
|
8
mysql-test/suite/plugins/r/filekeys_unencfile.result
Normal file
8
mysql-test/suite/plugins/r/filekeys_unencfile.result
Normal file
@ -0,0 +1,8 @@
|
||||
call mtr.add_suppression("Cannot decrypt .*keys.txt. Not encrypted");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' init function returned error");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' registration.*failed");
|
||||
create table t1(c1 bigint not null, b char(200)) engine=innodb page_encryption=1 page_encryption_key=1;
|
||||
ERROR HY000: Can't create table `test`.`t1` (errno: 140 "Wrong create options")
|
||||
select plugin_status from information_schema.plugins
|
||||
where plugin_name = 'file_key_management';
|
||||
plugin_status
|
BIN
mysql-test/suite/plugins/t/filekeys-data.enc
Normal file
BIN
mysql-test/suite/plugins/t/filekeys-data.enc
Normal file
Binary file not shown.
1
mysql-test/suite/plugins/t/filekeys-data.key
Normal file
1
mysql-test/suite/plugins/t/filekeys-data.key
Normal file
@ -0,0 +1 @@
|
||||
secret
|
18
mysql-test/suite/plugins/t/filekeys_badtest.inc
Normal file
18
mysql-test/suite/plugins/t/filekeys_badtest.inc
Normal file
@ -0,0 +1,18 @@
|
||||
-- source include/not_embedded.inc
|
||||
-- source include/have_xtradb.inc
|
||||
-- source filekeys_plugin.inc
|
||||
|
||||
--eval call mtr.add_suppression("$SEARCH_PATTERN")
|
||||
call mtr.add_suppression("Plugin 'file_key_management' init function returned error");
|
||||
call mtr.add_suppression("Plugin 'file_key_management' registration.*failed");
|
||||
|
||||
--let SEARCH_FILE= $MYSQLTEST_VARDIR/log/mysqld.1.err
|
||||
--let SEARCH_RANGE= -10000
|
||||
--source include/search_pattern_in_file.inc
|
||||
|
||||
--error ER_CANT_CREATE_TABLE
|
||||
create table t1(c1 bigint not null, b char(200)) engine=innodb page_encryption=1 page_encryption_key=1;
|
||||
|
||||
select plugin_status from information_schema.plugins
|
||||
where plugin_name = 'file_key_management';
|
||||
|
2
mysql-test/suite/plugins/t/filekeys_encfile.opt
Normal file
2
mysql-test/suite/plugins/t/filekeys_encfile.opt
Normal file
@ -0,0 +1,2 @@
|
||||
--loose-file-key-management-filekey=secret
|
||||
--loose-file-key-management-filename=$MTR_SUITE_DIR/t/filekeys-data.enc
|
1
mysql-test/suite/plugins/t/filekeys_encfile.test
Normal file
1
mysql-test/suite/plugins/t/filekeys_encfile.test
Normal file
@ -0,0 +1 @@
|
||||
source filekeys_goodtest.inc;
|
2
mysql-test/suite/plugins/t/filekeys_encfile_bad.opt
Normal file
2
mysql-test/suite/plugins/t/filekeys_encfile_bad.opt
Normal file
@ -0,0 +1,2 @@
|
||||
--loose-file-key-management-filekey=bad
|
||||
--loose-file-key-management-filename=$MTR_SUITE_DIR/t/filekeys-data.enc
|
2
mysql-test/suite/plugins/t/filekeys_encfile_bad.test
Normal file
2
mysql-test/suite/plugins/t/filekeys_encfile_bad.test
Normal file
@ -0,0 +1,2 @@
|
||||
let SEARCH_PATTERN=Cannot decrypt .*filekeys-data.enc. Wrong key;
|
||||
source filekeys_badtest.inc;
|
2
mysql-test/suite/plugins/t/filekeys_encfile_badfile.opt
Normal file
2
mysql-test/suite/plugins/t/filekeys_encfile_badfile.opt
Normal file
@ -0,0 +1,2 @@
|
||||
--loose-file-key-management-filekey=FILE:bad
|
||||
--loose-file-key-management-filename=$MTR_SUITE_DIR/t/filekeys-data.enc
|
2
mysql-test/suite/plugins/t/filekeys_encfile_badfile.test
Normal file
2
mysql-test/suite/plugins/t/filekeys_encfile_badfile.test
Normal file
@ -0,0 +1,2 @@
|
||||
let SEARCH_PATTERN=File 'bad' not found;
|
||||
source filekeys_badtest.inc;
|
2
mysql-test/suite/plugins/t/filekeys_encfile_file.opt
Normal file
2
mysql-test/suite/plugins/t/filekeys_encfile_file.opt
Normal file
@ -0,0 +1,2 @@
|
||||
--loose-file-key-management-filekey=FILE:$MTR_SUITE_DIR/t/filekeys-data.key
|
||||
--loose-file-key-management-filename=$MTR_SUITE_DIR/t/filekeys-data.enc
|
1
mysql-test/suite/plugins/t/filekeys_encfile_file.test
Normal file
1
mysql-test/suite/plugins/t/filekeys_encfile_file.test
Normal file
@ -0,0 +1 @@
|
||||
source filekeys_goodtest.inc;
|
1
mysql-test/suite/plugins/t/filekeys_encfile_no.opt
Normal file
1
mysql-test/suite/plugins/t/filekeys_encfile_no.opt
Normal file
@ -0,0 +1 @@
|
||||
--loose-file-key-management-filename=$MTR_SUITE_DIR/t/filekeys-data.enc
|
2
mysql-test/suite/plugins/t/filekeys_encfile_no.test
Normal file
2
mysql-test/suite/plugins/t/filekeys_encfile_no.test
Normal file
@ -0,0 +1,2 @@
|
||||
let SEARCH_PATTERN=Cannot decrypt .*filekeys-data.enc. Wrong key;
|
||||
source filekeys_badtest.inc;
|
20
mysql-test/suite/plugins/t/filekeys_goodtest.inc
Normal file
20
mysql-test/suite/plugins/t/filekeys_goodtest.inc
Normal file
@ -0,0 +1,20 @@
|
||||
-- source include/have_xtradb.inc
|
||||
-- source filekeys_plugin.inc
|
||||
|
||||
create table t1(c1 bigint not null, b char(200)) engine=innodb page_encryption=1 page_encryption_key=1;
|
||||
show create table t1;
|
||||
insert t1 values (12345, repeat('1234567890', 20));
|
||||
|
||||
alter table t1 page_encryption_key=2;
|
||||
show create table t1;
|
||||
--replace_regex /#sql-[0-9a-f_]*/#sql-temporary/
|
||||
--error ER_CANT_CREATE_TABLE
|
||||
alter table t1 page_encryption_key=3;
|
||||
show create table t1;
|
||||
alter table t1 page_encryption_key=33;
|
||||
show create table t1;
|
||||
alter table t1 page_encryption_key=4;
|
||||
show create table t1;
|
||||
|
||||
drop table t1;
|
||||
|
2
mysql-test/suite/plugins/t/filekeys_nofile.test
Normal file
2
mysql-test/suite/plugins/t/filekeys_nofile.test
Normal file
@ -0,0 +1,2 @@
|
||||
let SEARCH_PATTERN=File '' not found;
|
||||
source filekeys_badtest.inc;
|
4
mysql-test/suite/plugins/t/filekeys_plugin.inc
Normal file
4
mysql-test/suite/plugins/t/filekeys_plugin.inc
Normal file
@ -0,0 +1,4 @@
|
||||
if (!$FILE_KEY_MANAGEMENT_SO)
|
||||
{
|
||||
--skip Needs file_key_management
|
||||
}
|
2
mysql-test/suite/plugins/t/filekeys_plugin.opt
Normal file
2
mysql-test/suite/plugins/t/filekeys_plugin.opt
Normal file
@ -0,0 +1,2 @@
|
||||
--plugin-load-add=$FILE_KEY_MANAGEMENT_SO
|
||||
--encryption-algorithm=aes_cbc
|
1
mysql-test/suite/plugins/t/filekeys_syntax.opt
Normal file
1
mysql-test/suite/plugins/t/filekeys_syntax.opt
Normal file
@ -0,0 +1 @@
|
||||
--loose-file-key-management-filename=$MYSQL_TMP_DIR/keys.txt
|
96
mysql-test/suite/plugins/t/filekeys_syntax.test
Normal file
96
mysql-test/suite/plugins/t/filekeys_syntax.test
Normal file
@ -0,0 +1,96 @@
|
||||
#
|
||||
# first test - missing key file
|
||||
#
|
||||
let SEARCH_PATTERN=File '.*keys.txt' not found;
|
||||
source filekeys_badtest.inc;
|
||||
|
||||
#
|
||||
# key id= 0
|
||||
#
|
||||
write_file $MYSQL_TMP_DIR/keys.txt;
|
||||
1;11111111111111111111111111111111
|
||||
0;00000000000000000000000000000000
|
||||
2;22222222222222222222222222222222
|
||||
EOF
|
||||
--replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR
|
||||
--error 2
|
||||
install soname 'file_key_management';
|
||||
source filekeys_badtest.inc;
|
||||
let SEARCH_PATTERN=Invalid key id;
|
||||
source filekeys_badtest.inc;
|
||||
|
||||
#
|
||||
# id too big
|
||||
#
|
||||
remove_file $MYSQL_TMP_DIR/keys.txt;
|
||||
write_file $MYSQL_TMP_DIR/keys.txt;
|
||||
1;11111111111111111111111111111111
|
||||
4294967299;00000000000000000000000000000000
|
||||
2;22222222222222222222222222222222
|
||||
EOF
|
||||
--replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR
|
||||
--error 2
|
||||
install soname 'file_key_management';
|
||||
source filekeys_badtest.inc;
|
||||
let SEARCH_PATTERN=Invalid key id;
|
||||
source filekeys_badtest.inc;
|
||||
#
|
||||
# wrong key length (not 16, 24, 23 bytes)
|
||||
#
|
||||
remove_file $MYSQL_TMP_DIR/keys.txt;
|
||||
write_file $MYSQL_TMP_DIR/keys.txt;
|
||||
1;11111111111111111111111111111111
|
||||
3;00000000000000000000000000000000111122223333
|
||||
2;22222222222222222222222222222222
|
||||
EOF
|
||||
--replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR
|
||||
--error 2
|
||||
install soname 'file_key_management';
|
||||
source filekeys_badtest.inc;
|
||||
let SEARCH_PATTERN=Invalid key;
|
||||
source filekeys_badtest.inc;
|
||||
#
|
||||
# wrong key length (not an even number of digits)
|
||||
#
|
||||
remove_file $MYSQL_TMP_DIR/keys.txt;
|
||||
write_file $MYSQL_TMP_DIR/keys.txt;
|
||||
1;11111111111111111111111111111111
|
||||
3;0000000000000000000000000000000
|
||||
2;22222222222222222222222222222222
|
||||
EOF
|
||||
--replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR
|
||||
--error 2
|
||||
install soname 'file_key_management';
|
||||
source filekeys_badtest.inc;
|
||||
let SEARCH_PATTERN=Invalid key;
|
||||
source filekeys_badtest.inc;
|
||||
#
|
||||
# no semicolon
|
||||
#
|
||||
remove_file $MYSQL_TMP_DIR/keys.txt;
|
||||
write_file $MYSQL_TMP_DIR/keys.txt;
|
||||
1;11111111111111111111111111111111
|
||||
3:0000000000000000000000000000000
|
||||
2;22222222222222222222222222222222
|
||||
EOF
|
||||
--replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR
|
||||
--error 2
|
||||
install soname 'file_key_management';
|
||||
source filekeys_badtest.inc;
|
||||
let SEARCH_PATTERN=Syntax error;
|
||||
source filekeys_badtest.inc;
|
||||
#
|
||||
# another syntax error
|
||||
#
|
||||
remove_file $MYSQL_TMP_DIR/keys.txt;
|
||||
write_file $MYSQL_TMP_DIR/keys.txt;
|
||||
1;11111111111111111111111111111111
|
||||
syntax error
|
||||
2;22222222222222222222222222222222
|
||||
EOF
|
||||
--replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR
|
||||
--error 2
|
||||
install soname 'file_key_management';
|
||||
source filekeys_badtest.inc;
|
||||
let SEARCH_PATTERN=Syntax error;
|
||||
source filekeys_badtest.inc;
|
2
mysql-test/suite/plugins/t/filekeys_unencfile.opt
Normal file
2
mysql-test/suite/plugins/t/filekeys_unencfile.opt
Normal file
@ -0,0 +1,2 @@
|
||||
--loose-file-key-management-filekey=bad
|
||||
--loose-file-key-management-filename=$MYSQL_TEST_DIR/std_data/keys.txt
|
2
mysql-test/suite/plugins/t/filekeys_unencfile.test
Normal file
2
mysql-test/suite/plugins/t/filekeys_unencfile.test
Normal file
@ -0,0 +1,2 @@
|
||||
let SEARCH_PATTERN=Cannot decrypt .*keys.txt. Not encrypted;
|
||||
source filekeys_badtest.inc;
|
Loading…
x
Reference in New Issue
Block a user