76 lines
3.3 KiB
Plaintext
76 lines
3.3 KiB
Plaintext
# WL5769
|
|
# Keyring_file plugin and keyring_file_data variable testing.
|
|
|
|
--disable_ps_protocol
|
|
call mtr.add_suppression("\\[ERROR\\] \\[[^]]*\\] \\[[^]]*\\] Function 'keyring_file' already exists");
|
|
call mtr.add_suppression("\\[ERROR\\] \\[[^]]*\\] \\[[^]]*\\] Couldn't load plugin named 'keyring_file' with soname 'keyring_file.so'.");
|
|
call mtr.add_suppression("keyring_file_data cannot be set to new value as the keyring file cannot be created/accessed in the provided path");
|
|
call mtr.add_suppression("\\[ERROR\\] \\[[^]]*\\] \\[[^]]*\\] Plugin keyring_file reported: 'keyring_file initialization failure.");
|
|
call mtr.add_suppression("Plugin keyring_file reported: 'Could not create keyring directory The keyring_file will stay unusable until correct path to the keyring directory gets provided");
|
|
call mtr.add_suppression("Error while loading keyring content. The keyring might be malformed");
|
|
call mtr.add_suppression("\\[ERROR\\] \\[[^]]*\\] \\[[^]]*\\] Plugin keyring_file reported: 'File .*keyring' not found .*");
|
|
call mtr.add_suppression("\\[ERROR\\] \\[[^]]*\\] \\[[^]]*\\] Plugin keyring_file reported: 'File .*keyring/' not found .*");
|
|
call mtr.add_suppression("\\[ERROR\\] \\[[^]]*\\] \\[[^]]*\\] Plugin keyring_file reported: 'File 'MYSQL_test_invalid/dir/' not found .*");
|
|
call mtr.add_suppression("\\[ERROR\\] \\[[^]]*\\] \\[[^]]*\\] Plugin keyring_file reported: 'File '/' not found .*");
|
|
call mtr.add_suppression("\\[ERROR\\] \\[[^]]*\\] \\[[^]]*\\] Plugin keyring_file reported: 'Incorrect Keyring file");
|
|
|
|
# Installing keyring plugin.
|
|
--disable_warnings
|
|
--replace_regex /\.dll/.so/
|
|
eval INSTALL PLUGIN keyring_file SONAME '$KEYRING_PLUGIN';
|
|
--enable_warnings
|
|
# Check keyring plugin
|
|
query_vertical SELECT PLUGIN_NAME,PLUGIN_VERSION,PLUGIN_STATUS
|
|
FROM INFORMATION_SCHEMA.PLUGINS WHERE plugin_name='keyring_file';
|
|
--echo
|
|
SET @@global.keyring_file_data='keyring_file';
|
|
SELECT @@global.keyring_file_data;
|
|
# Creating table with encryption.
|
|
CREATE TABLE t1(c1 INT, c2 char(20)) ENCRYPTION="Y" ENGINE = InnoDB;
|
|
|
|
# Setting keyring_file_data value to file.
|
|
--replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR
|
|
eval SET @@global.keyring_file_data= '$MYSQL_TMP_DIR/new_keyring_file_data';
|
|
--file_exists $MYSQL_TMP_DIR/new_keyring_file_data
|
|
--replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR
|
|
SELECT @@global.keyring_file_data;
|
|
|
|
# Invalid values
|
|
--error ER_WRONG_VALUE_FOR_VAR
|
|
SET @@global.keyring_file_data='';
|
|
--error ER_WRONG_TYPE_FOR_VAR
|
|
SET @@global.keyring_file_data=1;
|
|
--error ER_WRONG_VALUE_FOR_VAR
|
|
SET @@global.keyring_file_data='/';
|
|
--error ER_WRONG_VALUE_FOR_VAR
|
|
SET @@global.keyring_file_data='/keyring/';
|
|
--error ER_WRONG_VALUE_FOR_VAR
|
|
--error ER_GLOBAL_VARIABLE
|
|
SET @@session.keyring_file_data= '$MYSQL_TMP_DIR/new_keyring_file_data';
|
|
--error ER_GLOBAL_VARIABLE
|
|
SET @@local.keyring_file_data= '$MYSQL_TMP_DIR/new_keyring_file_data';
|
|
|
|
# Setting keyring_file_data value to dir.
|
|
--Error ER_WRONG_VALUE_FOR_VAR
|
|
SET @@global.keyring_file_data= 'MYSQL_test_invalid/dir/';
|
|
--replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR
|
|
SELECT @@global.keyring_file_data;
|
|
--echo
|
|
|
|
UNINSTALL PLUGIN keyring_file;
|
|
|
|
|
|
# Check keyring plugin
|
|
query_vertical SELECT PLUGIN_NAME,PLUGIN_VERSION,PLUGIN_STATUS
|
|
FROM INFORMATION_SCHEMA.PLUGINS WHERE plugin_name='keyring_file';
|
|
--file_exists $MYSQL_TMP_DIR/new_keyring_file_data
|
|
--echo
|
|
|
|
# Cleanup
|
|
DROP TABLE t1;
|
|
|
|
--remove_file $MYSQL_TMP_DIR/mydummy_key
|
|
--source include/force_restart.inc
|
|
--echo
|
|
--echo #End:
|