summaryrefslogtreecommitdiff
path: root/mysql-test/t/old_passwords_func.test
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test/t/old_passwords_func.test')
-rw-r--r--mysql-test/t/old_passwords_func.test118
1 files changed, 118 insertions, 0 deletions
diff --git a/mysql-test/t/old_passwords_func.test b/mysql-test/t/old_passwords_func.test
new file mode 100644
index 00000000000..47f77e45f9b
--- /dev/null
+++ b/mysql-test/t/old_passwords_func.test
@@ -0,0 +1,118 @@
+############# mysql-test\t\old_passwords_func.test ############################
+# #
+# Variable Name: old_passwords #
+# Scope: GLOBAL & SESSION #
+# Access Type: Dynamic #
+# Data Type: BOOLEAN #
+# Default Value: FALSE #
+# Values: TRUE, FALSE #
+# #
+# #
+# Creation Date: 2008-03-12 #
+# Author: Sharique Abdullah #
+# #
+# Description: Test Cases of Dynamic System Variable "old_passwords" #
+# that checks behavior of this variable in the following ways #
+# * Functionality based on different values #
+# #
+# Reference: http://dev.mysql.com/doc/refman/5.0/en #
+# /server-options.html#option_mysqld_old-passwords #
+# #
+###############################################################################
+
+#
+# Setup
+#
+
+SET @global_old_passwords = @@GLOBAL.old_passwords;
+SET @session_old_passwords = @@SESSION.old_passwords;
+SET @global_secure_auth = @@GLOBAL.secure_auth;
+
+
+--echo '#------------------------FN_DYNVARS_115_01---------------------------#'
+
+--echo ** Connection default **
+connection default;
+
+#
+# 2 Users with FALSE value
+#
+
+CREATE USER 'userNewPass1'@'localhost' IDENTIFIED BY 'pass1';
+CREATE USER 'userNewPass2'@'localhost' IDENTIFIED BY 'pass2';
+
+SET GLOBAL old_passwords = TRUE;
+SET SESSION old_passwords = TRUE;
+
+#
+# 1 User with TRUE value
+#
+
+CREATE USER 'userOldPass'@'localhost' IDENTIFIED BY 'pass3';
+
+SET GLOBAL secure_auth = FALSE;
+
+--echo ** Connecting con1 using username 'userNewPass1' **
+connect (con1,localhost,userNewPass1,pass1,);
+SELECT CURRENT_USER();
+--echo userNewPass1@localhost Expected
+
+--echo ** Connecting con2 using username 'userNewPass2' **
+connect (con2,localhost,userNewPass2,pass2,);
+SELECT CURRENT_USER();
+--echo userNewPass2@localhost Expected
+
+--echo ** Connecting con3 using username 'userOldPass' **
+connect (con3,localhost,userOldPass,pass3,);
+SELECT CURRENT_USER();
+--echo userOldPass@localhost Expected
+
+--echo ** Connection default **
+connection default;
+
+--echo ** Disconnecting con1, con2, con3 **
+disconnect con1;
+disconnect con2;
+disconnect con3;
+
+--echo '#------------------------FN_DYNVARS_115_02---------------------------#'
+
+SET GLOBAL secure_auth = TRUE;
+
+--echo ** Connecting con1 using username 'userNewPass1' **
+connect (con1,localhost,userNewPass1,pass1,);
+SELECT CURRENT_USER();
+--echo userNewPass1@localhost Expected
+
+--echo ** Connecting con2 using username 'userNewPass2' **
+connect (con2,localhost,userNewPass2,pass2,);
+SELECT CURRENT_USER();
+--echo userNewPass2@localhost Expected
+
+--echo ** Connecting con3 using username 'userOldPass' **
+--disable_query_log
+--error ER_SERVER_IS_IN_SECURE_AUTH_MODE
+connect (con3,localhost,userOldPass,pass3,);
+--enable_query_log
+--echo Expected Error 'Server is running in secure auth mode'
+SELECT CURRENT_USER();
+--echo userNewPass2@localhost Expected
+
+--echo ** Connection default **
+connection default;
+
+--echo ** Disconnecting con1, con2 **
+disconnect con1;
+disconnect con2;
+
+#
+# Cleanup
+#
+
+DROP USER 'userNewPass1'@'localhost';
+DROP USER 'userNewPass2'@'localhost';
+DROP USER 'userOldPass'@'localhost';
+
+SET @@GLOBAL.old_passwords = @global_old_passwords;
+SET @@SESSION.old_passwords = @session_old_passwords;
+SET @@GLOBAL.secure_auth = @global_secure_auth;