Skip to content

Commit 14d9801

Browse files
committed
fix MDEV-34424 for ed255129
realloc can't be done for mysql->passwd. There's also no pretty way to pass the ext-salt into hash_password, so let's use thread_local instead. For GCC < 4.9 (SLES 12, CentOS 7), which don't support _Thread_local, pk will be recalculated instead
1 parent c4bf4ce commit 14d9801

File tree

3 files changed

+55
-1
lines changed

3 files changed

+55
-1
lines changed

libmariadb

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
include/master-slave.inc
2+
[connection master]
3+
connection slave;
4+
install soname 'auth_ed25519';
5+
connection master;
6+
install soname 'auth_ed25519';
7+
create user rpluser@'%' identified via ed25519 using PASSWORD('rpl_pass');
8+
grant replication slave on *.* to rpluser@'%';
9+
connection master;
10+
connection slave;
11+
include/stop_slave.inc
12+
change master to master_user='rpluser', master_password='rpl_pass';
13+
include/start_slave.inc
14+
# Cleanup
15+
include/stop_slave.inc
16+
change master to master_user='root', master_password='';
17+
include/start_slave.inc
18+
include/stop_slave.inc
19+
drop user rpluser@'%';
20+
uninstall soname 'auth_ed25519';
21+
connection master;
22+
drop user rpluser@'%';
23+
uninstall soname 'auth_ed25519';
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
if (!$AUTH_ED25519_SO) {
2+
skip No auth_ed25519 plugin;
3+
}
4+
5+
source include/master-slave.inc;
6+
7+
sync_slave_with_master;
8+
install soname 'auth_ed25519';
9+
# create a user for replication with ed25519 auth plugin
10+
connection master;
11+
install soname 'auth_ed25519';
12+
create user rpluser@'%' identified via ed25519 using PASSWORD('rpl_pass');
13+
grant replication slave on *.* to rpluser@'%';
14+
connection master;
15+
sync_slave_with_master;
16+
# Set the slave to connect using the user created with the ed25519 plugin for replication
17+
source include/stop_slave.inc;
18+
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
19+
change master to master_user='rpluser', master_password='rpl_pass';
20+
source include/start_slave.inc;
21+
22+
--echo # Cleanup
23+
source include/stop_slave.inc;
24+
change master to master_user='root', master_password='';
25+
source include/start_slave.inc;
26+
source include/stop_slave.inc;
27+
drop user rpluser@'%';
28+
uninstall soname 'auth_ed25519';
29+
connection master;
30+
drop user rpluser@'%';
31+
uninstall soname 'auth_ed25519';

0 commit comments

Comments
 (0)