summaryrefslogtreecommitdiff
path: root/mysql-test/t/rpl_ssl1.test
diff options
context:
space:
mode:
authorunknown <msvensson@pilot.blaudden>2007-04-02 11:15:09 +0200
committerunknown <msvensson@pilot.blaudden>2007-04-02 11:15:09 +0200
commitf65cb96b6031565187f819eae13f0d3e80ddcdbb (patch)
tree860e498cb6cf393f31952a9863cfe2af46ba7adc /mysql-test/t/rpl_ssl1.test
parent516b8b2137e27661960372c8bf5f757ffb2f2883 (diff)
parent74a32b0f2d2db6096c74e42bc5c5d8f9ff0cd01b (diff)
downloadmariadb-git-f65cb96b6031565187f819eae13f0d3e80ddcdbb.tar.gz
Merge pilot.blaudden:/home/msvensson/mysql/mysql-5.1
into pilot.blaudden:/home/msvensson/mysql/mysql-5.1-maint client/client_priv.h: Auto merged mysql-test/mysql-test-run.pl: Auto merged mysql-test/r/create.result: Auto merged mysql-test/r/mysqldump.result: Auto merged mysql-test/r/rpl_deadlock_innodb.result: Auto merged mysql-test/r/rpl_flushlog_loop.result: Auto merged mysql-test/r/rpl_known_bugs_detection.result: Auto merged mysql-test/r/rpl_ndb_basic.result: Auto merged mysql-test/r/rpl_ndb_extraCol.result: Auto merged mysql-test/r/rpl_ndb_sync.result: Auto merged mysql-test/r/rpl_rbr_to_sbr.result: Auto merged mysql-test/r/rpl_row_inexist_tbl.result: Auto merged mysql-test/r/rpl_row_max_relay_size.result: Auto merged mysql-test/r/rpl_row_tabledefs_2myisam.result: Auto merged mysql-test/r/rpl_row_tabledefs_3innodb.result: Auto merged mysql-test/r/rpl_stm_max_relay_size.result: Auto merged mysql-test/r/rpl_stm_until.result: Auto merged mysql-test/r/sp-code.result: Auto merged mysql-test/r/type_datetime.result: Auto merged mysql-test/t/mysqlbinlog.test: Auto merged sql/field.cc: Auto merged sql/field.h: Auto merged sql/item.h: Auto merged sql/item_func.cc: Auto merged sql/item_strfunc.cc: Auto merged sql/item_sum.cc: Auto merged sql/lex.h: Auto merged sql/log.cc: Auto merged sql/log_event.cc: Auto merged sql/slave.cc: Auto merged sql/sql_show.cc: Auto merged sql/sql_yacc.yy: Auto merged mysql-test/r/gis.result: Merge 5.0->5.1 mysql-test/r/rpl_000015.result: Merge after adding new column to SHOW SLAVE STATUS mysql-test/r/rpl_change_master.result: Merge after adding new column to SHOW SLAVE STATUS mysql-test/r/rpl_loaddata.result: Merge after adding new column to SHOW SLAVE STATUS mysql-test/r/rpl_log_pos.result: Merge after adding new column to SHOW SLAVE STATUS mysql-test/r/rpl_ndb_log.result: Merge after adding new column to SHOW SLAVE STATUS mysql-test/r/rpl_rotate_logs.result: Merge after adding new column to SHOW SLAVE STATUS mysql-test/r/rpl_row_log.result: Merge after adding new column to SHOW SLAVE STATUS mysql-test/r/rpl_row_log_innodb.result: Merge after adding new column to SHOW SLAVE STATUS mysql-test/r/rpl_row_reset_slave.result: Merge after adding new column to SHOW SLAVE STATUS mysql-test/r/rpl_row_until.result: Merge after adding new column to SHOW SLAVE STATUS mysql-test/r/rpl_server_id1.result: Merge after adding new column to SHOW SLAVE STATUS mysql-test/r/rpl_server_id2.result: Merge after adding new column to SHOW SLAVE STATUS mysql-test/r/rpl_stm_log.result: Merge after adding new column to SHOW SLAVE STATUS mysql-test/r/rpl_stm_reset_slave.result: Merge after adding new column to SHOW SLAVE STATUS mysql-test/t/gis.test: Merge 5.0->5.1
Diffstat (limited to 'mysql-test/t/rpl_ssl1.test')
-rw-r--r--mysql-test/t/rpl_ssl1.test97
1 files changed, 97 insertions, 0 deletions
diff --git a/mysql-test/t/rpl_ssl1.test b/mysql-test/t/rpl_ssl1.test
new file mode 100644
index 00000000000..6ca1484bb17
--- /dev/null
+++ b/mysql-test/t/rpl_ssl1.test
@@ -0,0 +1,97 @@
+source include/have_ssl.inc;
+source include/master-slave.inc;
+
+# We don't test all types of ssl auth params here since it's a bit hard
+# until problems with OpenSSL 0.9.7 are unresolved
+
+# creating replication user for whom ssl auth is required
+# preparing playground
+connection master;
+grant replication slave on *.* to replssl@localhost require ssl;
+create table t1 (t int);
+save_master_pos;
+
+#syncing with master
+connection slave;
+sync_with_master;
+
+#trying to use this user without ssl
+stop slave;
+change master to master_user='replssl',master_password='';
+start slave;
+
+#showing that replication don't work
+connection master;
+insert into t1 values (1);
+#reasonable timeout for changes to propagate to slave
+sleep 3;
+connection slave;
+select * from t1;
+
+#showing that replication could work with ssl params
+stop slave;
+--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
+eval change master to master_ssl=1 , master_ssl_ca ='$MYSQL_TEST_DIR/std_data/cacert.pem', master_ssl_cert='$MYSQL_TEST_DIR/std_data/client-cert.pem', master_ssl_key='$MYSQL_TEST_DIR/std_data/client-key.pem';
+start slave;
+
+#avoiding unneeded sleeps
+connection master;
+save_master_pos;
+connection slave;
+sync_with_master;
+
+#checking that replication is ok
+select * from t1;
+
+#checking show slave status
+--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR $MASTER_MYPORT MASTER_MYPORT
+--replace_column 1 # 6 # 7 # 8 # 9 # 10 # 11 # 16 # 22 # 23 # 33 #
+query_vertical show slave status;
+
+#checking if replication works without ssl also performing clean up
+stop slave;
+change master to master_user='root',master_password='', master_ssl=0;
+start slave;
+connection master;
+drop user replssl@localhost;
+drop table t1;
+save_master_pos;
+connection slave;
+sync_with_master;
+--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR $MASTER_MYPORT MASTER_MYPORT
+--replace_column 1 # 6 # 7 # 8 # 9 # 10 # 11 # 16 # 22 # 23 # 33 #
+query_vertical show slave status;
+
+# End of 4.1 tests
+
+# Start replication with ssl_verify_server_cert turned on
+connection slave;
+stop slave;
+--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
+eval change master to
+ master_host="localhost",
+ master_ssl=1 ,
+ master_ssl_ca ='$MYSQL_TEST_DIR/std_data/cacert.pem',
+ master_ssl_cert='$MYSQL_TEST_DIR/std_data/client-cert.pem',
+ master_ssl_key='$MYSQL_TEST_DIR/std_data/client-key.pem',
+ master_ssl_verify_server_cert=1;
+start slave;
+
+connection master;
+create table t1 (t int);
+insert into t1 values (1);
+
+sync_slave_with_master;
+
+echo on slave;
+#checking that replication is ok
+select * from t1;
+
+#checking show slave status
+--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR $MASTER_MYPORT MASTER_MYPORT
+--replace_column 1 # 6 # 7 # 8 # 9 # 10 # 11 # 16 # 22 # 23 # 33 #
+query_vertical show slave status;
+
+connection master;
+drop table t1;
+sync_slave_with_master;