Annotation of embedaddon/php/ext/mcrypt/tests/bug37595.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: Bug #37595 (mcrypt_generic calculates data length in wrong way)
3: --SKIPIF--
4: <?php if (!extension_loaded("mcrypt")) print "skip"; ?>
5: --FILE--
6: <?php
7:
8: $cipher_alg = MCRYPT_BLOWFISH;
9: $skey = array(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15);
10: $key='';
11: foreach($skey as $t) {
12: $key .= chr($t);
13: }
14:
15: $sstr = array(1,2,3,4,5,6,7,8);
16: $iv='';
17: foreach($sstr as $s) {
18: $iv .= chr($s);
19: }
20:
21: $str = "12345678";
22:
23: $td = mcrypt_module_open(MCRYPT_BLOWFISH,'',MCRYPT_MODE_CBC,'');
24:
25: $data = Array(
26: '12345678',
27: '123456789',
28: "\x001234567",
29: '',
30: '1234567812345678',
31: '12345678123456789'
32: );
33:
34: foreach ($data as $val) {
35: mcrypt_generic_init($td, $key, $iv);
36: $enc = mcrypt_generic($td, $val);
37:
38: mcrypt_generic_deinit($td);
39:
40: mcrypt_generic_init($td, $key, $iv);
41: var_dump($dec = @mdecrypt_generic($td, $enc));
42: }
43:
44: mcrypt_module_close($td);
45:
46: echo "Done\n";
47: ?>
48: --EXPECTF--
49: string(8) "12345678"
50: string(16) "123456789 "
51: string(8) "