yaauie Wed, 20 Jul 2011 18:59:05 +0000 Revision: http://svn.php.net/viewvc?view=revision&revision=313485
Log: tests for bug #55169 (mcrypt and openssl) Bug: https://bugs.php.net/55169 (Assigned) mcrypt_create_iv always fails to gather sufficient random data Changed paths: A php/php-src/branches/PHP_5_3/ext/mcrypt/tests/bug55169.phpt A php/php-src/branches/PHP_5_3/ext/openssl/tests/bug55169.phpt A php/php-src/branches/PHP_5_4/ext/mcrypt/tests/bug55169.phpt A php/php-src/branches/PHP_5_4/ext/openssl/tests/bug55169.phpt A php/php-src/trunk/ext/mcrypt/tests/bug55169.phpt A php/php-src/trunk/ext/openssl/tests/bug55169.phpt Added: php/php-src/branches/PHP_5_3/ext/mcrypt/tests/bug55169.phpt =================================================================== --- php/php-src/branches/PHP_5_3/ext/mcrypt/tests/bug55169.phpt (rev 0) +++ php/php-src/branches/PHP_5_3/ext/mcrypt/tests/bug55169.phpt 2011-07-20 18:59:05 UTC (rev 313485) @@ -0,0 +1,43 @@ +--TEST-- +mcrypt_create_iv +https://bugs.php.net/bug.php?id=55169 +--CREDIT-- +Ryan Biesemeyer <r...@yaauie.com> +--FILE-- +<?php +for( $i=1; $i<=64; $i = $i*2 ){ + echo 'Input: '. $i . PHP_EOL; + $random = mcrypt_create_iv( $i, MCRYPT_DEV_URANDOM ); + echo ' Length: ' . strlen( $random ) . PHP_EOL; + echo ' Hex: '. bin2hex( $random ) . PHP_EOL; + echo PHP_EOL; +} +?> +--EXPECTF-- +Input: 1 + Length: 1 + Hex: %x + +Input: 2 + Length: 2 + Hex: %x + +Input: 4 + Length: 4 + Hex: %x + +Input: 8 + Length: 8 + Hex: %x + +Input: 16 + Length: 16 + Hex: %x + +Input: 32 + Length: 32 + Hex: %x + +Input: 64 + Length: 64 + Hex: %x Added: php/php-src/branches/PHP_5_3/ext/openssl/tests/bug55169.phpt =================================================================== --- php/php-src/branches/PHP_5_3/ext/openssl/tests/bug55169.phpt (rev 0) +++ php/php-src/branches/PHP_5_3/ext/openssl/tests/bug55169.phpt 2011-07-20 18:59:05 UTC (rev 313485) @@ -0,0 +1,43 @@ +--TEST-- +openssl_random_pseudo_bytes test +https://bugs.php.net/bug.php?id=55169 +--INI-- +extension=php_openssl.dll +--SKIPIF-- +if(!extension_loaded('openssl')) echo 'skip - requires openssl extension' +--FILE-- +<?php +for ($i = -1; $i <= 4; $i++) { + $bytes = openssl_random_pseudo_bytes($i, $cstrong); + $hex = bin2hex($bytes); + + echo "Lengths: Bytes: $i and Hex: " . strlen($hex) . PHP_EOL; + var_dump($hex); + var_dump($cstrong); + echo PHP_EOL; +} +?> +--EXPECTF-- +Lengths: Bytes: -1 and Hex: 0 +string(0) "" +NULL + +Lengths: Bytes: 0 and Hex: 0 +string(0) "" +NULL + +Lengths: Bytes: 1 and Hex: 2 +string(2) "%x" +bool(true) + +Lengths: Bytes: 2 and Hex: 4 +string(4) "%x" +bool(true) + +Lengths: Bytes: 3 and Hex: 6 +string(6) "%x" +bool(true) + +Lengths: Bytes: 4 and Hex: 8 +string(8) "%x" +bool(true) Added: php/php-src/branches/PHP_5_4/ext/mcrypt/tests/bug55169.phpt =================================================================== --- php/php-src/branches/PHP_5_4/ext/mcrypt/tests/bug55169.phpt (rev 0) +++ php/php-src/branches/PHP_5_4/ext/mcrypt/tests/bug55169.phpt 2011-07-20 18:59:05 UTC (rev 313485) @@ -0,0 +1,43 @@ +--TEST-- +mcrypt_create_iv +https://bugs.php.net/bug.php?id=55169 +--CREDIT-- +Ryan Biesemeyer <r...@yaauie.com> +--FILE-- +<?php +for( $i=1; $i<=64; $i = $i*2 ){ + echo 'Input: '. $i . PHP_EOL; + $random = mcrypt_create_iv( $i, MCRYPT_DEV_URANDOM ); + echo ' Length: ' . strlen( $random ) . PHP_EOL; + echo ' Hex: '. bin2hex( $random ) . PHP_EOL; + echo PHP_EOL; +} +?> +--EXPECTF-- +Input: 1 + Length: 1 + Hex: %x + +Input: 2 + Length: 2 + Hex: %x + +Input: 4 + Length: 4 + Hex: %x + +Input: 8 + Length: 8 + Hex: %x + +Input: 16 + Length: 16 + Hex: %x + +Input: 32 + Length: 32 + Hex: %x + +Input: 64 + Length: 64 + Hex: %x Added: php/php-src/branches/PHP_5_4/ext/openssl/tests/bug55169.phpt =================================================================== --- php/php-src/branches/PHP_5_4/ext/openssl/tests/bug55169.phpt (rev 0) +++ php/php-src/branches/PHP_5_4/ext/openssl/tests/bug55169.phpt 2011-07-20 18:59:05 UTC (rev 313485) @@ -0,0 +1,43 @@ +--TEST-- +openssl_random_pseudo_bytes test +https://bugs.php.net/bug.php?id=55169 +--INI-- +extension=php_openssl.dll +--SKIPIF-- +if(!extension_loaded('openssl')) echo 'skip - requires openssl extension' +--FILE-- +<?php +for ($i = -1; $i <= 4; $i++) { + $bytes = openssl_random_pseudo_bytes($i, $cstrong); + $hex = bin2hex($bytes); + + echo "Lengths: Bytes: $i and Hex: " . strlen($hex) . PHP_EOL; + var_dump($hex); + var_dump($cstrong); + echo PHP_EOL; +} +?> +--EXPECTF-- +Lengths: Bytes: -1 and Hex: 0 +string(0) "" +NULL + +Lengths: Bytes: 0 and Hex: 0 +string(0) "" +NULL + +Lengths: Bytes: 1 and Hex: 2 +string(2) "%x" +bool(true) + +Lengths: Bytes: 2 and Hex: 4 +string(4) "%x" +bool(true) + +Lengths: Bytes: 3 and Hex: 6 +string(6) "%x" +bool(true) + +Lengths: Bytes: 4 and Hex: 8 +string(8) "%x" +bool(true) Added: php/php-src/trunk/ext/mcrypt/tests/bug55169.phpt =================================================================== --- php/php-src/trunk/ext/mcrypt/tests/bug55169.phpt (rev 0) +++ php/php-src/trunk/ext/mcrypt/tests/bug55169.phpt 2011-07-20 18:59:05 UTC (rev 313485) @@ -0,0 +1,43 @@ +--TEST-- +mcrypt_create_iv +https://bugs.php.net/bug.php?id=55169 +--CREDIT-- +Ryan Biesemeyer <r...@yaauie.com> +--FILE-- +<?php +for( $i=1; $i<=64; $i = $i*2 ){ + echo 'Input: '. $i . PHP_EOL; + $random = mcrypt_create_iv( $i, MCRYPT_DEV_URANDOM ); + echo ' Length: ' . strlen( $random ) . PHP_EOL; + echo ' Hex: '. bin2hex( $random ) . PHP_EOL; + echo PHP_EOL; +} +?> +--EXPECTF-- +Input: 1 + Length: 1 + Hex: %x + +Input: 2 + Length: 2 + Hex: %x + +Input: 4 + Length: 4 + Hex: %x + +Input: 8 + Length: 8 + Hex: %x + +Input: 16 + Length: 16 + Hex: %x + +Input: 32 + Length: 32 + Hex: %x + +Input: 64 + Length: 64 + Hex: %x Added: php/php-src/trunk/ext/openssl/tests/bug55169.phpt =================================================================== --- php/php-src/trunk/ext/openssl/tests/bug55169.phpt (rev 0) +++ php/php-src/trunk/ext/openssl/tests/bug55169.phpt 2011-07-20 18:59:05 UTC (rev 313485) @@ -0,0 +1,43 @@ +--TEST-- +openssl_random_pseudo_bytes test +https://bugs.php.net/bug.php?id=55169 +--INI-- +extension=php_openssl.dll +--SKIPIF-- +if(!extension_loaded('openssl')) echo 'skip - requires openssl extension' +--FILE-- +<?php +for ($i = -1; $i <= 4; $i++) { + $bytes = openssl_random_pseudo_bytes($i, $cstrong); + $hex = bin2hex($bytes); + + echo "Lengths: Bytes: $i and Hex: " . strlen($hex) . PHP_EOL; + var_dump($hex); + var_dump($cstrong); + echo PHP_EOL; +} +?> +--EXPECTF-- +Lengths: Bytes: -1 and Hex: 0 +string(0) "" +NULL + +Lengths: Bytes: 0 and Hex: 0 +string(0) "" +NULL + +Lengths: Bytes: 1 and Hex: 2 +string(2) "%x" +bool(true) + +Lengths: Bytes: 2 and Hex: 4 +string(4) "%x" +bool(true) + +Lengths: Bytes: 3 and Hex: 6 +string(6) "%x" +bool(true) + +Lengths: Bytes: 4 and Hex: 8 +string(8) "%x" +bool(true)
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php