Commit a30867bc authored by msvensson@pilot.blaudden's avatar msvensson@pilot.blaudden

Merge pilot.blaudden:/home/msvensson/mysql/bug21781/my50-bug21781

into  pilot.blaudden:/home/msvensson/mysql/mysql-5.0-maint
parents be1e9485 b271a336
-- require r/have_openssl.require -- require r/have_ssl.require
disable_query_log; disable_query_log;
show variables like "have_openssl"; show variables like "have_ssl";
enable_query_log; enable_query_log;
Variable_name Value Variable_name Value
have_openssl YES have_ssl YES
stop slave;
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
reset master;
reset slave;
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
start slave;
grant replication slave on *.* to replssl@localhost require ssl;
create table t1 (t int auto_increment, KEY(t));
stop slave;
change master to
master_user='replssl',
master_password='',
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;
insert into t1 values(1);
select * from t1;
t
1
show slave status;
Slave_IO_State #
Master_Host 127.0.0.1
Master_User replssl
Master_Port MASTER_MYPORT
Connect_Retry 1
Master_Log_File master-bin.000001
Read_Master_Log_Pos 420
Relay_Log_File #
Relay_Log_Pos #
Relay_Master_Log_File master-bin.000001
Slave_IO_Running Yes
Slave_SQL_Running Yes
Replicate_Do_DB
Replicate_Ignore_DB
Replicate_Do_Table
Replicate_Ignore_Table
Replicate_Wild_Do_Table
Replicate_Wild_Ignore_Table
Last_Errno 0
Last_Error
Skip_Counter 0
Exec_Master_Log_Pos 420
Relay_Log_Space #
Until_Condition None
Until_Log_File
Until_Log_Pos 0
Master_SSL_Allowed Yes
Master_SSL_CA_File MYSQL_TEST_DIR/std_data/cacert.pem
Master_SSL_CA_Path
Master_SSL_Cert MYSQL_TEST_DIR/std_data/client-cert.pem
Master_SSL_Cipher
Master_SSL_Key MYSQL_TEST_DIR/std_data/client-key.pem
Seconds_Behind_Master #
STOP SLAVE;
select * from t1;
t
1
show slave status;
Slave_IO_State #
Master_Host 127.0.0.1
Master_User replssl
Master_Port MASTER_MYPORT
Connect_Retry 1
Master_Log_File master-bin.000001
Read_Master_Log_Pos 12320
Relay_Log_File #
Relay_Log_Pos #
Relay_Master_Log_File master-bin.000001
Slave_IO_Running Yes
Slave_SQL_Running Yes
Replicate_Do_DB
Replicate_Ignore_DB
Replicate_Do_Table
Replicate_Ignore_Table
Replicate_Wild_Do_Table
Replicate_Wild_Ignore_Table
Last_Errno 0
Last_Error
Skip_Counter 0
Exec_Master_Log_Pos 12320
Relay_Log_Space #
Until_Condition None
Until_Log_File
Until_Log_Pos 0
Master_SSL_Allowed Yes
Master_SSL_CA_File MYSQL_TEST_DIR/std_data/cacert.pem
Master_SSL_CA_Path
Master_SSL_Cert MYSQL_TEST_DIR/std_data/client-cert.pem
Master_SSL_Cipher
Master_SSL_Key MYSQL_TEST_DIR/std_data/client-key.pem
Seconds_Behind_Master #
This diff is collapsed.
-- source include/have_openssl.inc -- source include/have_ssl.inc
# This test can't be in func_encrypt.test, because it requires # This test can't be in func_encrypt.test, because it requires
# --des-key-file to not be set. # --des-key-file to not be set.
......
-- source include/have_openssl.inc -- source include/have_ssl.inc
--disable_warnings --disable_warnings
drop table if exists t1; drop table if exists t1;
......
# We test openssl. Result set is optimized to be compiled with --with-openssl. # Tests for SSL connections, only run if mysqld is compiled
# Use mysql-test-run with --with-openssl option. # with support for SSL.
-- source include/have_openssl.inc
-- source include/have_ssl.inc
--disable_warnings --disable_warnings
drop table if exists t1; drop table if exists t1;
......
source include/have_openssl.inc; source include/have_ssl.inc;
source include/master-slave.inc; source include/master-slave.inc;
# We don't test all types of ssl auth params here since it's a bit hard # We don't test all types of ssl auth params here since it's a bit hard
......
source include/have_ssl.inc;
source include/master-slave.inc;
# create a user for replication that requires ssl encryption
connection master;
grant replication slave on *.* to replssl@localhost require ssl;
create table t1 (t int auto_increment, KEY(t));
sync_slave_with_master;
# Set slave to use SSL for connection to master
stop slave;
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
eval change master to
master_user='replssl',
master_password='',
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;
# Switch to master and insert one record, then sync it to slave
connection master;
insert into t1 values(1);
sync_slave_with_master;
# The record should now be on slave
select * from t1;
# The slave is synced and waiting/reading from master
# SHOW SLAVE STATUS will show "Waiting for master to send event"
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR $MASTER_MYPORT MASTER_MYPORT
--replace_column 1 # 8 # 9 # 23 # 33 #
query_vertical show slave status;
# Stop the slave, as reported in bug#21871 it would hang
STOP SLAVE;
select * from t1;
# Do the same thing a number of times
disable_query_log;
let $i= 100;
while ($i)
{
start slave;
connection master;
insert into t1 values (NULL);
connection slave;
stop slave;
dec $i;
}
start slave;
enable_query_log;
connection master;
sync_slave_with_master;
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR $MASTER_MYPORT MASTER_MYPORT
--replace_column 1 # 8 # 9 # 23 # 33 #
query_vertical show slave status;
# Turn on ssl between the client and server # Turn on ssl between the client and server
# and run a number of tests # and run a number of tests
-- source include/have_openssl.inc -- source include/have_ssl.inc
connect (ssl_con,localhost,root,,,,,SSL); connect (ssl_con,localhost,root,,,,,SSL);
......
# Turn on compression between the client and server # Turn on compression between the client and server
# and run a number of tests # and run a number of tests
-- source include/have_openssl.inc -- source include/have_ssl.inc
-- source include/have_compress.inc -- source include/have_compress.inc
connect (ssl_compress_con,localhost,root,,,,,SSL COMPRESS); connect (ssl_compress_con,localhost,root,,,,,SSL COMPRESS);
......
-- source include/have_openssl.inc -- source include/have_ssl.inc
# Repeat connect/disconnect # Repeat connect/disconnect
......
# Tell the server to use a DES-encrypted cert
# then turn on ssl between the client and server
# and run a number of standard tests
-- source include/have_openssl.inc
# Connect by ip to avoid turning on "ssl-verify-server-cert"
connect (ssl_con,127.0.0.1,root,,,,$MASTER_MYPORT,SSL);
# Check ssl turned on
SHOW STATUS LIKE 'Ssl_cipher';
# Source select test case
-- source include/common-tests.inc
# Check ssl turned on
SHOW STATUS LIKE 'Ssl_cipher';
...@@ -1397,7 +1397,7 @@ extern handlerton myisammrg_hton; ...@@ -1397,7 +1397,7 @@ extern handlerton myisammrg_hton;
#define have_merge_db myisammrg_hton.state #define have_merge_db myisammrg_hton.state
extern SHOW_COMP_OPTION have_isam; extern SHOW_COMP_OPTION have_isam;
extern SHOW_COMP_OPTION have_raid, have_openssl, have_symlink, have_dlopen; extern SHOW_COMP_OPTION have_raid, have_ssl, have_symlink, have_dlopen;
extern SHOW_COMP_OPTION have_query_cache; extern SHOW_COMP_OPTION have_query_cache;
extern SHOW_COMP_OPTION have_geometry, have_rtree_keys; extern SHOW_COMP_OPTION have_geometry, have_rtree_keys;
extern SHOW_COMP_OPTION have_crypt; extern SHOW_COMP_OPTION have_crypt;
......
...@@ -496,7 +496,7 @@ CHARSET_INFO *national_charset_info, *table_alias_charset; ...@@ -496,7 +496,7 @@ CHARSET_INFO *national_charset_info, *table_alias_charset;
CHARSET_INFO *character_set_filesystem; CHARSET_INFO *character_set_filesystem;
SHOW_COMP_OPTION have_isam; SHOW_COMP_OPTION have_isam;
SHOW_COMP_OPTION have_raid, have_openssl, have_symlink, have_query_cache; SHOW_COMP_OPTION have_raid, have_ssl, have_symlink, have_query_cache;
SHOW_COMP_OPTION have_geometry, have_rtree_keys, have_dlopen; SHOW_COMP_OPTION have_geometry, have_rtree_keys, have_dlopen;
SHOW_COMP_OPTION have_crypt, have_compress; SHOW_COMP_OPTION have_crypt, have_compress;
...@@ -3046,12 +3046,12 @@ static void init_ssl() ...@@ -3046,12 +3046,12 @@ static void init_ssl()
if (!ssl_acceptor_fd) if (!ssl_acceptor_fd)
{ {
opt_use_ssl = 0; opt_use_ssl = 0;
have_openssl= SHOW_OPTION_DISABLED; have_ssl= SHOW_OPTION_DISABLED;
} }
} }
else else
{ {
have_openssl= SHOW_OPTION_DISABLED; have_ssl= SHOW_OPTION_DISABLED;
} }
if (des_key_file) if (des_key_file)
load_des_key_file(des_key_file); load_des_key_file(des_key_file);
...@@ -6621,9 +6621,9 @@ static void mysql_init_variables(void) ...@@ -6621,9 +6621,9 @@ static void mysql_init_variables(void)
have_raid=SHOW_OPTION_NO; have_raid=SHOW_OPTION_NO;
#endif #endif
#ifdef HAVE_OPENSSL #ifdef HAVE_OPENSSL
have_openssl=SHOW_OPTION_YES; have_ssl=SHOW_OPTION_YES;
#else #else
have_openssl=SHOW_OPTION_NO; have_ssl=SHOW_OPTION_NO;
#endif #endif
#ifdef HAVE_BROKEN_REALPATH #ifdef HAVE_BROKEN_REALPATH
have_symlink=SHOW_OPTION_NO; have_symlink=SHOW_OPTION_NO;
......
...@@ -871,7 +871,9 @@ struct show_var_st init_vars[]= { ...@@ -871,7 +871,9 @@ struct show_var_st init_vars[]= {
{"have_isam", (char*) &have_isam, SHOW_HAVE}, {"have_isam", (char*) &have_isam, SHOW_HAVE},
{"have_merge_engine", (char*) &have_merge_db, SHOW_HAVE}, {"have_merge_engine", (char*) &have_merge_db, SHOW_HAVE},
{"have_ndbcluster", (char*) &have_ndbcluster, SHOW_HAVE}, {"have_ndbcluster", (char*) &have_ndbcluster, SHOW_HAVE},
{"have_openssl", (char*) &have_openssl, SHOW_HAVE}, /* have_openssl is just and alias for have_ssl */
{"have_openssl", (char*) &have_ssl, SHOW_HAVE},
{"have_ssl", (char*) &have_ssl, SHOW_HAVE},
{"have_query_cache", (char*) &have_query_cache, SHOW_HAVE}, {"have_query_cache", (char*) &have_query_cache, SHOW_HAVE},
{"have_raid", (char*) &have_raid, SHOW_HAVE}, {"have_raid", (char*) &have_raid, SHOW_HAVE},
{"have_rtree_keys", (char*) &have_rtree_keys, SHOW_HAVE}, {"have_rtree_keys", (char*) &have_rtree_keys, SHOW_HAVE},
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment