mirror of
				https://github.com/MariaDB/server.git
				synced 2025-11-04 04:46:15 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			93 lines
		
	
	
	
		
			2.7 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			93 lines
		
	
	
	
		
			2.7 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
 | 
						|
#
 | 
						|
# Tests for the performance_schema host_cache.
 | 
						|
#
 | 
						|
# Test authorization with auth plugins.
 | 
						|
# error reporting in:
 | 
						|
# - column COUNT_AUTH_PLUGIN_ERRORS
 | 
						|
# - column COUNT_PROXY_USER_ERRORS
 | 
						|
# - column COUNT_PROXY_USER_ACL_ERRORS
 | 
						|
 | 
						|
--source include/not_embedded.inc
 | 
						|
--source include/have_debug.inc
 | 
						|
--source include/check_ipv6.inc
 | 
						|
--source include/have_perfschema.inc
 | 
						|
--source include/have_hostname_cache.inc
 | 
						|
--source include/have_plugin_auth.inc
 | 
						|
 | 
						|
# Enforce a clean state
 | 
						|
--source ../include/wait_for_pfs_thread_count.inc
 | 
						|
--source ../include/hostcache_set_state.inc
 | 
						|
 | 
						|
CREATE USER 'plug'@'santa.claus.ipv6.example.com'
 | 
						|
  IDENTIFIED WITH 'test_plugin_server' AS 'plug_dest';
 | 
						|
CREATE USER 'plug_dest'@'santa.claus.ipv6.example.com'
 | 
						|
  IDENTIFIED BY 'plug_test_passwd';
 | 
						|
GRANT SELECT ON test.* TO 'plug_dest'@'santa.claus.ipv6.example.com';
 | 
						|
 | 
						|
connect (con1,"::1",root,,test,$MASTER_MYPORT,);
 | 
						|
select "Con1 is alive";
 | 
						|
select current_user();
 | 
						|
disconnect con1;
 | 
						|
 | 
						|
--connection default
 | 
						|
SET @saved_dbug = @@GLOBAL.debug_dbug;
 | 
						|
set global debug_dbug= "+d,vio_peer_addr_fake_ipv6,getnameinfo_fake_ipv6,getaddrinfo_fake_good_ipv6";
 | 
						|
uninstall plugin test_plugin_server;
 | 
						|
 | 
						|
--disable_query_log
 | 
						|
--error ER_PLUGIN_IS_NOT_LOADED
 | 
						|
connect (con2,"::1",plug,plug_dest,test,$MASTER_MYPORT,,,auth_test_plugin);
 | 
						|
--enable_query_log
 | 
						|
 | 
						|
--connection default
 | 
						|
--source ../include/hostcache_dump.inc
 | 
						|
 | 
						|
--disable_query_log
 | 
						|
--error ER_PLUGIN_IS_NOT_LOADED
 | 
						|
connect (con3,"::1",plug,plug_dest,test,$MASTER_MYPORT,,,auth_test_plugin);
 | 
						|
--enable_query_log
 | 
						|
 | 
						|
--connection default
 | 
						|
--source ../include/hostcache_dump.inc
 | 
						|
 | 
						|
--replace_result $AUTH_TEST_PLUGIN_SO PLUGIN_AUTH
 | 
						|
eval install plugin test_plugin_server soname '$AUTH_TEST_PLUGIN_SO';
 | 
						|
 | 
						|
--disable_query_log
 | 
						|
--error ER_ACCESS_DENIED_ERROR
 | 
						|
connect (con2,"::1",plug,plug_dest,test,$MASTER_MYPORT,,,auth_test_plugin);
 | 
						|
--enable_query_log
 | 
						|
 | 
						|
--connection default
 | 
						|
--source ../include/hostcache_dump.inc
 | 
						|
 | 
						|
--disable_query_log
 | 
						|
--error ER_ACCESS_DENIED_ERROR
 | 
						|
connect (con3,"::1",plug,plug_dest,test,$MASTER_MYPORT,,,auth_test_plugin);
 | 
						|
--enable_query_log
 | 
						|
 | 
						|
--connection default
 | 
						|
--source ../include/hostcache_dump.inc
 | 
						|
 | 
						|
GRANT PROXY ON 'plug_dest'@'santa.claus.ipv6.example.com'
 | 
						|
  TO 'plug'@'santa.claus.ipv6.example.com';
 | 
						|
 | 
						|
connect (con4,"::1",plug,plug_dest,test,$MASTER_MYPORT,,,auth_test_plugin);
 | 
						|
select "Con4 is alive";
 | 
						|
select user();
 | 
						|
select current_user();
 | 
						|
disconnect con4;
 | 
						|
 | 
						|
--connection default
 | 
						|
--source ../include/hostcache_dump.inc
 | 
						|
 | 
						|
REVOKE ALL PRIVILEGES ON *.* FROM 'plug_dest'@'santa.claus.ipv6.example.com';
 | 
						|
REVOKE PROXY ON 'plug_dest'@'santa.claus.ipv6.example.com'
 | 
						|
  FROM 'plug'@'santa.claus.ipv6.example.com';
 | 
						|
DROP USER 'plug'@'santa.claus.ipv6.example.com';
 | 
						|
DROP USER 'plug_dest'@'santa.claus.ipv6.example.com';
 | 
						|
 | 
						|
SET @@GLOBAL.debug_dbug = @saved_dbug;
 | 
						|
delete from mysql.plugin where name='test_plugin_server';
 | 
						|
 |