71 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
		
		
			
		
	
	
			71 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| 
								 | 
							
								-- source include/have_crypt.inc
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--disable_warnings
							 | 
						||
| 
								 | 
							
								drop table if exists t1;
							 | 
						||
| 
								 | 
							
								--enable_warnings
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								select length(encrypt('foo', 'ff')) <> 0;
							 | 
						||
| 
								 | 
							
								--replace_result $1$aa$4OSUA5cjdx0RUQ08opV27/ aaqPiZY5xR5l.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								create table t1 (name varchar(50), pw varchar(64));
							 | 
						||
| 
								 | 
							
								insert into t1 values ('tom', password('my_pass'));
							 | 
						||
| 
								 | 
							
								set @pass='my_pass';
							 | 
						||
| 
								 | 
							
								select name from t1 where name='tom' and pw=password(@pass);
							 | 
						||
| 
								 | 
							
								select name from t1 where name='tom' and pw=password(@undefined);
							 | 
						||
| 
								 | 
							
								drop table t1;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Test new and old password handling functions 
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								select password('abc');
							 | 
						||
| 
								 | 
							
								select password('');
							 | 
						||
| 
								 | 
							
								select old_password('abc');
							 | 
						||
| 
								 | 
							
								select old_password('');
							 | 
						||
| 
								 | 
							
								select password('gabbagabbahey');
							 | 
						||
| 
								 | 
							
								select old_password('idkfa');
							 | 
						||
| 
								 | 
							
								select length(password('1'));
							 | 
						||
| 
								 | 
							
								select length(encrypt('test'));
							 | 
						||
| 
								 | 
							
								select encrypt('test','aa');
							 | 
						||
| 
								 | 
							
								select old_password(NULL);
							 | 
						||
| 
								 | 
							
								select password(NULL);
							 | 
						||
| 
								 | 
							
								set global old_passwords=on;
							 | 
						||
| 
								 | 
							
								select password('');
							 | 
						||
| 
								 | 
							
								select old_password('');
							 | 
						||
| 
								 | 
							
								select password('idkfa');
							 | 
						||
| 
								 | 
							
								select old_password('idkfa');
							 | 
						||
| 
								 | 
							
								set old_passwords=on;
							 | 
						||
| 
								 | 
							
								select password('idkfa');
							 | 
						||
| 
								 | 
							
								select old_password('idkfa');
							 | 
						||
| 
								 | 
							
								set global old_passwords=off;
							 | 
						||
| 
								 | 
							
								select password('idkfa');
							 | 
						||
| 
								 | 
							
								select old_password('idkfa');
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# this test shows that new scrambles honor spaces in passwords:
							 | 
						||
| 
								 | 
							
								set old_passwords=off;
							 | 
						||
| 
								 | 
							
								select password('idkfa ');
							 | 
						||
| 
								 | 
							
								select password('idkfa');
							 | 
						||
| 
								 | 
							
								select password(' idkfa');
							 | 
						||
| 
								 | 
							
								select old_password('idkfa');
							 | 
						||
| 
								 | 
							
								select old_password(' i 	 d k f a ');
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								explain extended select password('idkfa '), old_password('idkfa');
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								# Bug #13619: Crash on FreeBSD with salt like '_.'
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								--replace_column 1 #
							 | 
						||
| 
								 | 
							
								select encrypt('1234','_.');
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# End of 4.1 tests
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo #
							 | 
						||
| 
								 | 
							
								--echo # Bug #44767: invalid memory reads in password() and old_password() 
							 | 
						||
| 
								 | 
							
								--echo #             functions
							 | 
						||
| 
								 | 
							
								--echo #
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								CREATE TABLE t1(c1 MEDIUMBLOB);
							 | 
						||
| 
								 | 
							
								INSERT INTO t1 VALUES (REPEAT('a', 1024));
							 | 
						||
| 
								 | 
							
								SELECT OLD_PASSWORD(c1), PASSWORD(c1) FROM t1;
							 | 
						||
| 
								 | 
							
								DROP TABLE t1;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo End of 5.0 tests
							 |