331 lines
		
	
	
		
			8.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
		
		
			
		
	
	
			331 lines
		
	
	
		
			8.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| 
								 | 
							
								# This test is to check various cases of connections
							 | 
						||
| 
								 | 
							
								# with right and wrong password, with and without database
							 | 
						||
| 
								 | 
							
								# Unfortunately the check is incomplete as we can't connect without database
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# This test makes no sense with the embedded server
							 | 
						||
| 
								 | 
							
								--source include/not_embedded.inc
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# check that CSV engine was compiled in, as the test relies on the presence
							 | 
						||
| 
								 | 
							
								# of the log tables (which are CSV-based). By connect mysql; show tables;
							 | 
						||
| 
								 | 
							
								--source include/have_csv.inc
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Save the initial number of concurrent sessions
							 | 
						||
| 
								 | 
							
								--source include/count_sessions.inc
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--disable_warnings
							 | 
						||
| 
								 | 
							
								drop table if exists t1,t2;
							 | 
						||
| 
								 | 
							
								--enable_warnings
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#connect (con1,localhost,root,,"");
							 | 
						||
| 
								 | 
							
								#show tables;
							 | 
						||
| 
								 | 
							
								connect (con1,localhost,root,,mysql);
							 | 
						||
| 
								 | 
							
								show tables;
							 | 
						||
| 
								 | 
							
								connect (con2,localhost,root,,test);
							 | 
						||
| 
								 | 
							
								show tables;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT
							 | 
						||
| 
								 | 
							
								--error ER_ACCESS_DENIED_ERROR
							 | 
						||
| 
								 | 
							
								connect (fail_con,localhost,root,z,test2);
							 | 
						||
| 
								 | 
							
								--replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT
							 | 
						||
| 
								 | 
							
								--error ER_ACCESS_DENIED_ERROR
							 | 
						||
| 
								 | 
							
								connect (fail_con,localhost,root,z,);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								connection default;
							 | 
						||
| 
								 | 
							
								disconnect con1;
							 | 
						||
| 
								 | 
							
								disconnect con2;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								grant ALL on *.* to test@localhost identified by "gambling";
							 | 
						||
| 
								 | 
							
								grant ALL on *.* to test@127.0.0.1 identified by "gambling";
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Now check this user with different databases
							 | 
						||
| 
								 | 
							
								#connect (con1,localhost,test,gambling,"");
							 | 
						||
| 
								 | 
							
								#show tables;
							 | 
						||
| 
								 | 
							
								connect (con3,localhost,test,gambling,mysql);
							 | 
						||
| 
								 | 
							
								show tables;
							 | 
						||
| 
								 | 
							
								connect (con4,localhost,test,gambling,test);
							 | 
						||
| 
								 | 
							
								show tables;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								connection default;
							 | 
						||
| 
								 | 
							
								disconnect con3;
							 | 
						||
| 
								 | 
							
								disconnect con4;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT
							 | 
						||
| 
								 | 
							
								--error ER_ACCESS_DENIED_ERROR
							 | 
						||
| 
								 | 
							
								connect (fail_con,localhost,test,,test2);
							 | 
						||
| 
								 | 
							
								--replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT
							 | 
						||
| 
								 | 
							
								--error ER_ACCESS_DENIED_ERROR
							 | 
						||
| 
								 | 
							
								# Need to protect "" within '' so it's interpreted literally
							 | 
						||
| 
								 | 
							
								connect (fail_con,localhost,test,,'""');
							 | 
						||
| 
								 | 
							
								--replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT
							 | 
						||
| 
								 | 
							
								--error ER_ACCESS_DENIED_ERROR
							 | 
						||
| 
								 | 
							
								connect (fail_con,localhost,test,zorro,test2);
							 | 
						||
| 
								 | 
							
								--replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT
							 | 
						||
| 
								 | 
							
								--error ER_ACCESS_DENIED_ERROR
							 | 
						||
| 
								 | 
							
								connect (fail_con,localhost,test,zorro,);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# check if old password version also works
							 | 
						||
| 
								 | 
							
								update mysql.user set password=old_password("gambling2") where user=_binary"test";
							 | 
						||
| 
								 | 
							
								flush privileges;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								connect (con10,localhost,test,gambling2,);
							 | 
						||
| 
								 | 
							
								connect (con5,localhost,test,gambling2,mysql);
							 | 
						||
| 
								 | 
							
								connection con5;
							 | 
						||
| 
								 | 
							
								set password="";
							 | 
						||
| 
								 | 
							
								--error ER_PASSWD_LENGTH
							 | 
						||
| 
								 | 
							
								set password='gambling3';
							 | 
						||
| 
								 | 
							
								set password=old_password('gambling3');
							 | 
						||
| 
								 | 
							
								show tables;
							 | 
						||
| 
								 | 
							
								connect (con6,localhost,test,gambling3,test);
							 | 
						||
| 
								 | 
							
								show tables;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								connection default;
							 | 
						||
| 
								 | 
							
								disconnect con10;
							 | 
						||
| 
								 | 
							
								disconnect con5;
							 | 
						||
| 
								 | 
							
								disconnect con6;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT
							 | 
						||
| 
								 | 
							
								--error ER_ACCESS_DENIED_ERROR
							 | 
						||
| 
								 | 
							
								connect (fail_con,localhost,test,,test2);
							 | 
						||
| 
								 | 
							
								--replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT
							 | 
						||
| 
								 | 
							
								--error ER_ACCESS_DENIED_ERROR
							 | 
						||
| 
								 | 
							
								connect (fail_con,localhost,test,,);
							 | 
						||
| 
								 | 
							
								--replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT
							 | 
						||
| 
								 | 
							
								--error ER_ACCESS_DENIED_ERROR
							 | 
						||
| 
								 | 
							
								connect (fail_con,localhost,test,zorro,test2);
							 | 
						||
| 
								 | 
							
								--replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT
							 | 
						||
| 
								 | 
							
								--error ER_ACCESS_DENIED_ERROR
							 | 
						||
| 
								 | 
							
								connect (fail_con,localhost,test,zorro,);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# remove user 'test' so that other tests which may use 'test'
							 | 
						||
| 
								 | 
							
								# do not depend on this test.
							 | 
						||
| 
								 | 
							
								delete from mysql.user where user=_binary"test";
							 | 
						||
| 
								 | 
							
								flush privileges;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								# Bug#12517 Clear user variables and replication events before
							 | 
						||
| 
								 | 
							
								#           closing temp tables in thread cleanup.
							 | 
						||
| 
								 | 
							
								connect (con7,localhost,root,,test);
							 | 
						||
| 
								 | 
							
								connection con7;
							 | 
						||
| 
								 | 
							
								let $connection_id= `select connection_id()`;
							 | 
						||
| 
								 | 
							
								create table t1 (id integer not null auto_increment primary key);
							 | 
						||
| 
								 | 
							
								create temporary table t2(id integer not null auto_increment primary key);
							 | 
						||
| 
								 | 
							
								set @id := 1;
							 | 
						||
| 
								 | 
							
								delete from t1 where id like @id;
							 | 
						||
| 
								 | 
							
								connection default;
							 | 
						||
| 
								 | 
							
								disconnect con7;
							 | 
						||
| 
								 | 
							
								# Wait till the session con7 is disconnected
							 | 
						||
| 
								 | 
							
								let $wait_condition =
							 | 
						||
| 
								 | 
							
								  SELECT COUNT(*) = 0
							 | 
						||
| 
								 | 
							
								  FROM information_schema.processlist
							 | 
						||
| 
								 | 
							
								  WHERE  id = '$connection_id';
							 | 
						||
| 
								 | 
							
								--source include/wait_condition.inc
							 | 
						||
| 
								 | 
							
								drop table t1;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo # ------------------------------------------------------------------
							 | 
						||
| 
								 | 
							
								--echo # -- End of 4.1 tests
							 | 
						||
| 
								 | 
							
								--echo # ------------------------------------------------------------------
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								###########################################################################
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								--echo # -- Bug#33507: Event scheduler creates more threads than max_connections
							 | 
						||
| 
								 | 
							
								--echo # -- which results in user lockout.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								GRANT USAGE ON *.* TO mysqltest_u1@localhost;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# NOTE: if the test case fails sporadically due to spurious connections,
							 | 
						||
| 
								 | 
							
								# consider disabling all users.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								let $saved_max_connections = `SELECT @@global.max_connections`;
							 | 
						||
| 
								 | 
							
								SET GLOBAL max_connections = 3;
							 | 
						||
| 
								 | 
							
								SET GLOBAL event_scheduler = ON;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								--echo # -- Waiting for Event Scheduler to start...
							 | 
						||
| 
								 | 
							
								let $wait_condition =
							 | 
						||
| 
								 | 
							
								  SELECT COUNT(*) = 1
							 | 
						||
| 
								 | 
							
								  FROM information_schema.processlist
							 | 
						||
| 
								 | 
							
								  WHERE user = 'event_scheduler';
							 | 
						||
| 
								 | 
							
								--source include/wait_condition.inc
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								--echo # -- Disconnecting default connection...
							 | 
						||
| 
								 | 
							
								--disconnect default
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								--echo # -- Check that we allow exactly three user connections, no matter how
							 | 
						||
| 
								 | 
							
								--echo # -- many threads are running.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								--echo # -- Connecting (1)...
							 | 
						||
| 
								 | 
							
								let $con_name = con_1;
							 | 
						||
| 
								 | 
							
								let $con_user_name = mysqltest_u1;
							 | 
						||
| 
								 | 
							
								--source include/connect2.inc
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								--echo # -- Connecting (2)...
							 | 
						||
| 
								 | 
							
								let $con_name = con_2;
							 | 
						||
| 
								 | 
							
								let $con_user_name = mysqltest_u1;
							 | 
						||
| 
								 | 
							
								--source include/connect2.inc
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								--echo # -- Connecting (3)...
							 | 
						||
| 
								 | 
							
								let $con_name = con_3;
							 | 
						||
| 
								 | 
							
								let $con_user_name = mysqltest_u1;
							 | 
						||
| 
								 | 
							
								--source include/connect2.inc
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								--echo # -- Connecting (4) [should fail]...
							 | 
						||
| 
								 | 
							
								let $con_name = con_4;
							 | 
						||
| 
								 | 
							
								let $con_user_name = mysqltest_u1;
							 | 
						||
| 
								 | 
							
								let $wait_timeout = 5;
							 | 
						||
| 
								 | 
							
								--source include/connect2.inc
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								--echo # -- Check that we allow one extra SUPER-user connection.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								--echo # -- Connecting super (1)...
							 | 
						||
| 
								 | 
							
								let $con_name = con_super_1;
							 | 
						||
| 
								 | 
							
								let $con_user_name = root;
							 | 
						||
| 
								 | 
							
								--source include/connect2.inc
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								--echo # -- Connecting super (2) [should fail]...
							 | 
						||
| 
								 | 
							
								let $con_name = con_super_2;
							 | 
						||
| 
								 | 
							
								let $con_user_name = root;
							 | 
						||
| 
								 | 
							
								let $wait_timeout = 5;
							 | 
						||
| 
								 | 
							
								--source include/connect2.inc
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								--echo # -- Ensure that we have Event Scheduler thread, 3 ordinary user
							 | 
						||
| 
								 | 
							
								--echo # -- connections and one extra super-user connection.
							 | 
						||
| 
								 | 
							
								SELECT user FROM information_schema.processlist ORDER BY id;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								--echo # -- Resetting variables...
							 | 
						||
| 
								 | 
							
								--eval SET GLOBAL max_connections = $saved_max_connections
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								--echo # -- Stopping Event Scheduler...
							 | 
						||
| 
								 | 
							
								SET GLOBAL event_scheduler = OFF;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								--echo # -- Waiting for Event Scheduler to stop...
							 | 
						||
| 
								 | 
							
								let $wait_condition =
							 | 
						||
| 
								 | 
							
								  SELECT COUNT(*) = 0
							 | 
						||
| 
								 | 
							
								  FROM information_schema.processlist
							 | 
						||
| 
								 | 
							
								  WHERE user = 'event_scheduler';
							 | 
						||
| 
								 | 
							
								--source include/wait_condition.inc
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								--echo # -- That's it. Closing connections...
							 | 
						||
| 
								 | 
							
								--disconnect con_1
							 | 
						||
| 
								 | 
							
								--disconnect con_2
							 | 
						||
| 
								 | 
							
								--disconnect con_3
							 | 
						||
| 
								 | 
							
								--disconnect con_super_1
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								--echo # -- Restoring default connection...
							 | 
						||
| 
								 | 
							
								--connect (default,localhost,root,,test)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								--echo # -- Waiting for connections to close...
							 | 
						||
| 
								 | 
							
								let $wait_condition =
							 | 
						||
| 
								 | 
							
								  SELECT COUNT(*) = 1
							 | 
						||
| 
								 | 
							
								  FROM information_schema.processlist
							 | 
						||
| 
								 | 
							
								  WHERE db = 'test';
							 | 
						||
| 
								 | 
							
								--source include/wait_condition.inc
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								DROP USER mysqltest_u1@localhost;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								--echo # -- End of Bug#33507.
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								###########################################################################
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo # -- Bug#35074: max_used_connections is not correct.
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								FLUSH STATUS;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								SHOW STATUS LIKE 'max_used_connections';
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								--echo # -- Starting Event Scheduler...
							 | 
						||
| 
								 | 
							
								SET GLOBAL event_scheduler = ON;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo # -- Waiting for Event Scheduler to start...
							 | 
						||
| 
								 | 
							
								--source include/running_event_scheduler.inc
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# NOTE: We should use a new connection here instead of reconnect in order to
							 | 
						||
| 
								 | 
							
								# avoid races (we can not for sure when the connection being disconnected is
							 | 
						||
| 
								 | 
							
								# actually disconnected on the server).
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								--echo # -- Opening a new connection to check max_used_connections...
							 | 
						||
| 
								 | 
							
								--connect (con_1,localhost,root)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								--echo # -- Check that max_used_connections hasn't changed.
							 | 
						||
| 
								 | 
							
								SHOW STATUS LIKE 'max_used_connections';
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								--echo # -- Closing new connection...
							 | 
						||
| 
								 | 
							
								--disconnect con_1
							 | 
						||
| 
								 | 
							
								--connection default
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								--echo # -- Stopping Event Scheduler...
							 | 
						||
| 
								 | 
							
								SET GLOBAL event_scheduler = OFF;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo # -- Waiting for Event Scheduler to stop...
							 | 
						||
| 
								 | 
							
								--source include/no_running_events.inc
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								--echo # -- End of Bug#35074.
							 | 
						||
| 
								 | 
							
								--echo
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								###########################################################################
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo #
							 | 
						||
| 
								 | 
							
								--echo # -- Bug#49752: 2469.126.2 unintentionally breaks authentication
							 | 
						||
| 
								 | 
							
								--echo #               against MySQL 5.1 server
							 | 
						||
| 
								 | 
							
								--echo #
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								GRANT ALL ON test.* TO 'Azundris12345678'@'localhost' IDENTIFIED BY 'test123';
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								FLUSH PRIVILEGES;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT
							 | 
						||
| 
								 | 
							
								connect (con1,localhost,Azundris123456789,test123,test);
							 | 
						||
| 
								 | 
							
								disconnect con1;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								connection default;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								DROP USER 'Azundris12345678'@'localhost';
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								FLUSH PRIVILEGES;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo #
							 | 
						||
| 
								 | 
							
								--echo # -- End of Bug#49752
							 | 
						||
| 
								 | 
							
								--echo #
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo # ------------------------------------------------------------------
							 | 
						||
| 
								 | 
							
								--echo # -- End of 5.1 tests
							 | 
						||
| 
								 | 
							
								--echo # ------------------------------------------------------------------
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Wait till all disconnects are completed
							 | 
						||
| 
								 | 
							
								--source include/wait_until_count_sessions.inc
							 | 
						||
| 
								 | 
							
								
							 |