diff options
Diffstat (limited to 'ext/standard/tests')
99 files changed, 6225 insertions, 387 deletions
diff --git a/ext/standard/tests/array/array_flip_variation2.phpt b/ext/standard/tests/array/array_flip_variation2.phpt Binary files differindex 1474a6955..997c39130 100644 --- a/ext/standard/tests/array/array_flip_variation2.phpt +++ b/ext/standard/tests/array/array_flip_variation2.phpt diff --git a/ext/standard/tests/array/bug50006.phpt b/ext/standard/tests/array/bug50006.phpt new file mode 100644 index 000000000..f03a00262 --- /dev/null +++ b/ext/standard/tests/array/bug50006.phpt @@ -0,0 +1,29 @@ +--TEST-- +Bug #50006 (Segfault caused by uksort()) +--FILE-- +<?php + +$data = array( + 'bar-bazbazbaz.' => 0, + 'bar-bazbazbaz-' => 0, + 'foo' => 0, +); +uksort($data, 'magic_sort_cmp'); +print_r($data); + +function magic_sort_cmp($a, $b) { + $a = substr($a, 1); + $b = substr($b, 1); + if (!$a) return $b ? -1 : 0; + if (!$b) return 1; + return magic_sort_cmp($a, $b); +} + +?> +--EXPECTF-- +Array +( + [foo] => 0 + [bar-bazbazbaz-] => 0 + [bar-bazbazbaz.] => 0 +) diff --git a/ext/standard/tests/array/bug50006_1.phpt b/ext/standard/tests/array/bug50006_1.phpt new file mode 100644 index 000000000..fbb7ddd59 --- /dev/null +++ b/ext/standard/tests/array/bug50006_1.phpt @@ -0,0 +1,29 @@ +--TEST-- +Bug #50006 (Segfault caused by uksort()) - usort variant +--FILE-- +<?php + +$data = array( + 'bar-bazbazbaz.', + 'bar-bazbazbaz-', + 'foo' +); +usort($data, 'magic_sort_cmp'); +print_r($data); + +function magic_sort_cmp($a, $b) { + $a = substr($a, 1); + $b = substr($b, 1); + if (!$a) return $b ? -1 : 0; + if (!$b) return 1; + return magic_sort_cmp($a, $b); +} + +?> +--EXPECTF-- +Array +( + [0] => foo + [1] => bar-bazbazbaz- + [2] => bar-bazbazbaz. +) diff --git a/ext/standard/tests/array/bug50006_2.phpt b/ext/standard/tests/array/bug50006_2.phpt new file mode 100644 index 000000000..19c0d1425 --- /dev/null +++ b/ext/standard/tests/array/bug50006_2.phpt @@ -0,0 +1,29 @@ +--TEST-- +Bug #50006 (Segfault caused by uksort()) - uasort variant +--FILE-- +<?php + +$data = array( + 'bar-bazbazbaz.', + 'bar-bazbazbaz-', + 'foo' +); +uasort($data, 'magic_sort_cmp'); +print_r($data); + +function magic_sort_cmp($a, $b) { + $a = substr($a, 1); + $b = substr($b, 1); + if (!$a) return $b ? -1 : 0; + if (!$b) return 1; + return magic_sort_cmp($a, $b); +} + +?> +--EXPECTF-- +Array +( + [2] => foo + [1] => bar-bazbazbaz- + [0] => bar-bazbazbaz. +) diff --git a/ext/standard/tests/array/uasort_variation5.phpt b/ext/standard/tests/array/uasort_variation5.phpt index 22d9da31c..e6996a55f 100644 --- a/ext/standard/tests/array/uasort_variation5.phpt +++ b/ext/standard/tests/array/uasort_variation5.phpt @@ -139,7 +139,7 @@ array(4) { [1]=> string(7) "Heredoc" [3]=> - string(43) "heredoc string with!@# and 123 + string(4%d) "heredoc string with!@# and 123 Test this!!!" } Done diff --git a/ext/standard/tests/bug49244.phpt b/ext/standard/tests/bug49244.phpt new file mode 100644 index 000000000..1ba24fb9b --- /dev/null +++ b/ext/standard/tests/bug49244.phpt @@ -0,0 +1,32 @@ +--TEST-- +Bug #49244 (Floating point NaN cause garbage characters) +--FILE-- +<?php + +for ($i = 0; $i < 10; $i++) { + printf("{%f} %1\$f\n", pow(-1.0, 0.3)); + printf(b"{%f} %1\$f\n", pow(-1.0, 0.3)); +} + +?> +--EXPECT-- +{NaN} NaN +{NaN} NaN +{NaN} NaN +{NaN} NaN +{NaN} NaN +{NaN} NaN +{NaN} NaN +{NaN} NaN +{NaN} NaN +{NaN} NaN +{NaN} NaN +{NaN} NaN +{NaN} NaN +{NaN} NaN +{NaN} NaN +{NaN} NaN +{NaN} NaN +{NaN} NaN +{NaN} NaN +{NaN} NaN diff --git a/ext/standard/tests/file/005_variation2-win32.phpt b/ext/standard/tests/file/005_variation2-win32.phpt index 513182dde..45dcbc5f0 100644 --- a/ext/standard/tests/file/005_variation2-win32.phpt +++ b/ext/standard/tests/file/005_variation2-win32.phpt @@ -108,18 +108,18 @@ Warning: filectime(): stat failed for | in %s on line %d *** testing touch *** -Warning: touch(): Unable to create file because %s in %s on line %d +Warning: touch(): %s in %s on line %d bool(false) -Warning: touch(): Unable to create file because %s in %s on line %d +Warning: touch(): %s in %s on line %d bool(false) -Warning: touch(): Unable to create file because %s in %s on line %d +Warning: touch(): %s in %s on line %d bool(false) -Warning: touch(): Unable to create file because %s in %s on line %d +Warning: touch(): %s in %s on line %d bool(false) -Warning: touch(): Unable to create file | because %s in %s on line %d +Warning: touch(): %s in %s on line %d bool(false) Done diff --git a/ext/standard/tests/file/bug26615.phpt b/ext/standard/tests/file/bug26615.phpt index 9fee92a69..3689fdfe1 100644 --- a/ext/standard/tests/file/bug26615.phpt +++ b/ext/standard/tests/file/bug26615.phpt @@ -1,6 +1,6 @@ --TEST-- Bug #26615 (exec crash on long input lines) ---INI--- +--INI-- variables_order=E --FILE-- <?php diff --git a/ext/standard/tests/file/bug47767.phpt b/ext/standard/tests/file/bug47767.phpt index 62388c28c..312476aa5 100644 --- a/ext/standard/tests/file/bug47767.phpt +++ b/ext/standard/tests/file/bug47767.phpt @@ -10,6 +10,11 @@ if(substr(PHP_OS, 0, 3) != 'WIN' ) { if(PHP_WINDOWS_VERSION_MAJOR < 6) { die('skip windows version 6.0+ only test'); } + +$ret = exec('mklink rename_variation13tmp.lnk ' . __FILE__ .' 2>&1', $out); +if (strpos($ret, 'privilege')) { + die('skip. SeCreateSymbolicLinkPrivilege not enable for this user.'); +} ?> --FILE-- <?php diff --git a/ext/standard/tests/file/chmod_variation3.phpt b/ext/standard/tests/file/chmod_variation3.phpt index c2dd607fe..df18ccf98 100644 --- a/ext/standard/tests/file/chmod_variation3.phpt +++ b/ext/standard/tests/file/chmod_variation3.phpt @@ -159,11 +159,11 @@ Error: 2 - chmod() expects parameter 1 to be string, array given, %s(%d) NULL --uppercase NULL-- -Error: 2 - chmod(): No such file or directory, %s(%d) +Error: 2 - chmod(): %s, %s(%d) bool(false) --lowercase null-- -Error: 2 - chmod(): No such file or directory, %s(%d) +Error: 2 - chmod(): %s, %s(%d) bool(false) --lowercase true-- @@ -171,7 +171,7 @@ Error: 2 - chmod(): No such file or directory, %s(%d) bool(false) --lowercase false-- -Error: 2 - chmod(): No such file or directory, %s(%d) +Error: 2 - chmod(): %s, %s(%d) bool(false) --uppercase TRUE-- @@ -179,15 +179,15 @@ Error: 2 - chmod(): No such file or directory, %s(%d) bool(false) --uppercase FALSE-- -Error: 2 - chmod(): No such file or directory, %s(%d) +Error: 2 - chmod(): %s, %s(%d) bool(false) --empty string DQ-- -Error: 2 - chmod(): No such file or directory, %s(%d) +Error: 2 - chmod(): %s, %s(%d) bool(false) --empty string SQ-- -Error: 2 - chmod(): No such file or directory, %s(%d) +Error: 2 - chmod(): %s, %s(%d) bool(false) --instance of classWithToString-- @@ -199,11 +199,11 @@ Error: 2 - chmod() expects parameter 1 to be string, object given, %s(%d) NULL --undefined var-- -Error: 2 - chmod(): No such file or directory, %s(%d) +Error: 2 - chmod(): %s, %s(%d) bool(false) --unset var-- -Error: 2 - chmod(): No such file or directory, %s(%d) +Error: 2 - chmod(): %s, %s(%d) bool(false) ===DONE=== diff --git a/ext/standard/tests/file/fflush_basic.phpt b/ext/standard/tests/file/fflush_basic.phpt index 5cd81d7aa..f375c4f07 100755 --- a/ext/standard/tests/file/fflush_basic.phpt +++ b/ext/standard/tests/file/fflush_basic.phpt @@ -21,6 +21,10 @@ $file_handle = fopen($filename, "w"); if($file_handle == false) exit("Error:failed to open file $filename"); +if(substr(PHP_OS, 0, 3) == "WIN") { + $data = str_replace("\r",'', $data); +} + // writing data to the file var_dump( fwrite($file_handle, $data) ); var_dump( fflush($file_handle) ); diff --git a/ext/standard/tests/file/fgetss_basic1.phpt b/ext/standard/tests/file/fgetss_basic1.phpt index ab9eae0be..4c5881d58 100644 --- a/ext/standard/tests/file/fgetss_basic1.phpt +++ b/ext/standard/tests/file/fgetss_basic1.phpt @@ -22,7 +22,9 @@ is a heredoc string. <pg>ksklnm@@$$&$&^%&^%&^%&</pg> <html> html </html> <?php echo "php"; ?> EOT; - +if(substr(PHP_OS, 0, 3) == "WIN") { + $string_with_tags = str_replace("\r",'', $string_with_tags); +} /* try reading the file opened in different modes of reading */ $file_modes = array("r","rb", "rt","r+", "r+b", "r+t"); @@ -62,7 +64,7 @@ for($mode_counter = 0; $mode_counter < count($file_modes); $mode_counter++) { echo "Done\n"; ?> ---EXPECTF-- +--EXPECT-- *** Testing fgetss() : Basic operations *** -- Testing fgetss() with file opened using r mode -- diff --git a/ext/standard/tests/file/fgetss_basic2-win32.phpt b/ext/standard/tests/file/fgetss_basic2-win32.phpt index 5a87b4c03..9187fe532 100644 --- a/ext/standard/tests/file/fgetss_basic2-win32.phpt +++ b/ext/standard/tests/file/fgetss_basic2-win32.phpt @@ -29,7 +29,9 @@ $string_with_tags = <<<EOT is a heredoc string. <pg>ksklnm@@$$&$&^%&^%&^%&</pg> <html> html </html> <?php echo "php"; ?> EOT; - +if(substr(PHP_OS, 0, 3) == "WIN") { + $string_with_tags = str_replace("\r",'', $string_with_tags); +} $filename = dirname(__FILE__)."/fgetss_basic2.tmp"; /* try reading the file opened in different modes of reading */ diff --git a/ext/standard/tests/file/fgetss_variation1-win32.phpt b/ext/standard/tests/file/fgetss_variation1-win32.phpt index dc3ee930c..0aca5d376 100644 --- a/ext/standard/tests/file/fgetss_variation1-win32.phpt +++ b/ext/standard/tests/file/fgetss_variation1-win32.phpt @@ -36,6 +36,10 @@ this text contains some html tags <body> body </body> <br> br </br> this is the line with \n character. EOT; +if(substr(PHP_OS, 0, 3) == "WIN") { + $string_with_tags = str_replace("\r",'', $string_with_tags); +} + $filename = dirname(__FILE__)."/fgetss_variation1.tmp"; /* try reading the file opened in different modes of reading */ @@ -73,7 +77,7 @@ for($mode_counter = 0; $mode_counter < count($file_modes); $mode_counter++) { echo "Done\n"; ?> ---EXPECTF-- +--EXPECT-- *** Testing fgetss() : usage variations *** -- Testing fgetss() with file opened using w mode -- diff --git a/ext/standard/tests/file/fgetss_variation3-win32.phpt b/ext/standard/tests/file/fgetss_variation3-win32.phpt index ea8ee2f8c..7539b3687 100644 --- a/ext/standard/tests/file/fgetss_variation3-win32.phpt +++ b/ext/standard/tests/file/fgetss_variation3-win32.phpt @@ -35,6 +35,10 @@ this text contains some html tags <body> body </body> <br> br </br> this is the line with \n character. EOT; +if(substr(PHP_OS, 0, 3) == "WIN") { + $string_with_tags = str_replace("\r",'', $string_with_tags); +} + $filename = dirname(__FILE__)."/fgetss_variation3.tmp"; /* try reading the file opened in different modes of reading */ @@ -76,7 +80,7 @@ for($mode_counter = 0; $mode_counter < count($file_modes); $mode_counter++) { echo "Done\n"; ?> ---EXPECTF-- +--EXPECT-- *** Testing fgetss() : usage variations *** -- Testing fgetss() with file opened using w+ mode -- diff --git a/ext/standard/tests/file/fgetss_variation4.phpt b/ext/standard/tests/file/fgetss_variation4.phpt index 134a9652a..6c201d1a9 100644 --- a/ext/standard/tests/file/fgetss_variation4.phpt +++ b/ext/standard/tests/file/fgetss_variation4.phpt @@ -1,5 +1,10 @@ --TEST-- Test fgetss() function : usage variations - read modes, file pointer at EOF +--SKIPIF-- +<?php +if(substr(PHP_OS, 0, 3) == "WIN") + die("skip not for Windows"); +?> --FILE-- <?php /* diff --git a/ext/standard/tests/file/fgetss_variation5-win32.phpt b/ext/standard/tests/file/fgetss_variation5-win32.phpt index d806ddd47..cedc7b98d 100644 --- a/ext/standard/tests/file/fgetss_variation5-win32.phpt +++ b/ext/standard/tests/file/fgetss_variation5-win32.phpt @@ -33,6 +33,9 @@ this is a line with more than eighty character,want to check line splitting corr this text contains some html tags <body> body </body> <br> br </br> this is the line with \n character. EOT; +if(substr(PHP_OS, 0, 3) == "WIN") { + $string_with_tags = str_replace("\r",'', $string_with_tags); +} $filename = dirname(__FILE__)."/fgetss_variation5.tmp"; @@ -77,7 +80,7 @@ for($mode_counter = 0; $mode_counter < count($file_modes); $mode_counter++) { echo "Done\n"; ?> ---EXPECTF-- +--EXPECT-- *** Testing fgetss() : usage variations *** -- Testing fgetss() with file opened using w+ mode -- diff --git a/ext/standard/tests/file/file.inc b/ext/standard/tests/file/file.inc index efb425ca4..c0f86e7c3 100644 --- a/ext/standard/tests/file/file.inc +++ b/ext/standard/tests/file/file.inc @@ -347,16 +347,16 @@ function create_files( $file_path, filled => total files filled, always returned as 1 perms_changed => total files permission changed */ -function create_links( $file_path, - $filename, - $link_count = 1, - $link_type = "soft", - $link_size = 1024, - $link_name_prefix = "link", - $link_name_suffix = 1, - $link_file_content = "text", - $link_perms = 0755, - $link_file_extension = ".tmp" +function create_links($file_path, + $filename, + $link_count = 1, + $link_type = "soft", + $link_size = 1024, + $link_name_prefix = "link", + $link_name_suffix = 1, + $link_file_content = "text", + $link_perms = 0755, + $link_file_extension = ".tmp" ) { $return_value = array('created' => 0, 'filled' => 0, 'perms_changed' => 0); diff --git a/ext/standard/tests/file/fopen_variation10-win32.phpt b/ext/standard/tests/file/fopen_variation10-win32.phpt index bf8d3889f..c949f86fa 100644 --- a/ext/standard/tests/file/fopen_variation10-win32.phpt +++ b/ext/standard/tests/file/fopen_variation10-win32.phpt @@ -6,6 +6,11 @@ Dave Kelsey <d_kelsey@uk.ibm.com> <?php if(substr(PHP_OS, 0, 3) != "WIN") die("skip Run only on Windows"); + +if (!is_writable('c:\\fopen_variation10.tmp')) { + die('skip. C:\\ not writable.'); +} + ?> --FILE-- <?php diff --git a/ext/standard/tests/file/fopen_variation11-win32.phpt b/ext/standard/tests/file/fopen_variation11-win32.phpt index cc33a4eb4..61a2f60ec 100644 --- a/ext/standard/tests/file/fopen_variation11-win32.phpt +++ b/ext/standard/tests/file/fopen_variation11-win32.phpt @@ -6,6 +6,10 @@ Dave Kelsey <d_kelsey@uk.ibm.com> <?php if(substr(PHP_OS, 0, 3) != "WIN") die("skip Run only on Windows"); +if (!is_writable('c:\\fopen_variation10.tmp')) { + die('skip. C:\\ not writable.'); +} + ?> --FILE-- <?php diff --git a/ext/standard/tests/file/fopen_variation17.phpt b/ext/standard/tests/file/fopen_variation17.phpt index 75f24b355..bc75c11c9 100644 --- a/ext/standard/tests/file/fopen_variation17.phpt +++ b/ext/standard/tests/file/fopen_variation17.phpt @@ -37,7 +37,7 @@ function runtest() { mkdir($dir1.'/'.$extraDir); mkdir($extraDir); - $tmpfile = $extraDir.'/ basename(__FILE__, ".php") . ".tmp"'; + $tmpfile = $extraDir . '/' . basename(__FILE__, ".php") . ".tmp"; $h = fopen($tmpfile, "w+", true); fwrite($h, (binary) "This is the test file"); fclose($h); diff --git a/ext/standard/tests/file/fpassthru_basic.phpt b/ext/standard/tests/file/fpassthru_basic.phpt index db03abc49..8924b27dd 100644 --- a/ext/standard/tests/file/fpassthru_basic.phpt +++ b/ext/standard/tests/file/fpassthru_basic.phpt @@ -13,7 +13,9 @@ $write_handle = fopen($file_name, "w"); $string = "Hello, world\n, abcdefg\tadsdsfdf\n8u2394723947\t$%$%#$%#$%#^#%^ Hello, world\n, abcdefg\tadsdsfdf\n8u2394723947\t$%$%#$%#$%#^#%^\n"; - +if(substr(PHP_OS, 0, 3) == "WIN") { + $string = str_replace("\r",'', $string); +} fwrite($write_handle, $string); fclose($write_handle); diff --git a/ext/standard/tests/file/mkdir_variation1-win32.phpt b/ext/standard/tests/file/mkdir_variation1-win32.phpt index 6dfe3be62..17f54926c 100644 --- a/ext/standard/tests/file/mkdir_variation1-win32.phpt +++ b/ext/standard/tests/file/mkdir_variation1-win32.phpt @@ -94,28 +94,28 @@ foreach($inputs as $key =>$value) { *** Testing mkdir() : usage variation *** --uppercase NULL-- -Error: 2 - mkdir(): No such file or directory, %s(%d) +Error: 2 - mkdir(): %s, %s(%d) --lowercase null-- -Error: 2 - mkdir(): No such file or directory, %s(%d) +Error: 2 - mkdir(): %s, %s(%d) --lowercase false-- -Error: 2 - mkdir(): No such file or directory, %s(%d) +Error: 2 - mkdir(): %s, %s(%d) --uppercase FALSE-- -Error: 2 - mkdir(): No such file or directory, %s(%d) +Error: 2 - mkdir(): %s, %s(%d) --empty string DQ-- -Error: 2 - mkdir(): No such file or directory, %s(%d) +Error: 2 - mkdir(): %s, %s(%d) --empty string SQ-- -Error: 2 - mkdir(): No such file or directory, %s(%d) +Error: 2 - mkdir(): %s, %s(%d) --undefined var-- -Error: 2 - mkdir(): No such file or directory, %s(%d) +Error: 2 - mkdir(): %s, %s(%d) --unset var-- -Error: 2 - mkdir(): No such file or directory, %s(%d) +Error: 2 - mkdir(): %s, %s(%d) --single space-- Error: 2 - mkdir(): %s, %s(%d) diff --git a/ext/standard/tests/file/realpath_cache.phpt b/ext/standard/tests/file/realpath_cache.phpt new file mode 100644 index 000000000..567f0e2c7 --- /dev/null +++ b/ext/standard/tests/file/realpath_cache.phpt @@ -0,0 +1,30 @@ +--TEST-- +realpath_cache_size() and realpath_cache_get() +--SKIPIF-- +<?php +if (substr(PHP_OS, 0, 3) == 'WIN') { + die('skip not on Windows'); +} +?> +--FILE-- +<?php + +var_dump(realpath_cache_size()); +$data = realpath_cache_get(); +var_dump($data[__DIR__]); + +echo "Done\n"; +?> +--EXPECTF-- +int(%d) +array(4) { + ["key"]=> + int(%d) + ["is_dir"]=> + bool(true) + ["realpath"]=> + string(%d) "%sfile" + ["expires"]=> + int(%d) +} +Done diff --git a/ext/standard/tests/file/realpath_cache_win32.phpt b/ext/standard/tests/file/realpath_cache_win32.phpt new file mode 100644 index 000000000..16fc412b0 --- /dev/null +++ b/ext/standard/tests/file/realpath_cache_win32.phpt @@ -0,0 +1,38 @@ +--TEST-- +realpath_cache_size() and realpath_cache_get() +--SKIPIF-- +<?php +if (substr(PHP_OS, 0, 3) != 'WIN') { + die('skip only on Windows'); +} +?> +--FILE-- +<?php + +var_dump(realpath_cache_size()); +$data = realpath_cache_get(); +var_dump($data[__DIR__]); + +echo "Done\n"; +?> +--EXPECTF-- +int(%d) +array(8) { + ["key"]=> + int(%d) + ["is_dir"]=> + bool(true) + ["realpath"]=> + string(%d) "%sfile" + ["expires"]=> + int(%d) + ["is_rvalid"]=> + bool(%s) + ["is_wvalid"]=> + bool(%s) + ["is_readable"]=> + bool(%s) + ["is_writable"]=> + bool(%s) +} +Done diff --git a/ext/standard/tests/file/rename_variation-win32.phpt b/ext/standard/tests/file/rename_variation-win32.phpt index cebf0334c..a10c6dfbe 100644 --- a/ext/standard/tests/file/rename_variation-win32.phpt +++ b/ext/standard/tests/file/rename_variation-win32.phpt @@ -69,7 +69,7 @@ bool(false) bool(true) -- Iteration 2 -- -Warning: rename(%s/rename_variation/rename_variation.tmp/,%s/rename_variation2.tmp): No such file or directory in %s on line %d +Warning: rename(%s/rename_variation/rename_variation.tmp/,%s/rename_variation2.tmp): The filename, directory name, or volume label syntax is incorrect. (code: 123) in %s on line %d bool(false) bool(false) bool(false) diff --git a/ext/standard/tests/file/rename_variation11-win32.phpt b/ext/standard/tests/file/rename_variation11-win32.phpt index d17b0d283..c13a09a95 100644 --- a/ext/standard/tests/file/rename_variation11-win32.phpt +++ b/ext/standard/tests/file/rename_variation11-win32.phpt @@ -92,12 +92,12 @@ bool(true) -- Iteration 5 -- -Warning: rename(%s\renameVar11\renameVar11Sub\..\\\renameVar11Sub\\..\\..\renameVar11Sub\renameMe.tmp,%s\renameVar11\renameVar11Sub\..\\\renameVar11Sub\\..\\..\renameVar11Sub\IwasRenamed.tmp): No such file or directory in %s on line %d +Warning: rename(%s\renameVar11\renameVar11Sub\..\\\renameVar11Sub\\..\\..\renameVar11Sub\renameMe.tmp,%s\renameVar11\renameVar11Sub\..\\\renameVar11Sub\\..\\..\renameVar11Sub\IwasRenamed.tmp): The system cannot find the path specified. (code: 3) in %s on line %d bool(false) -- Iteration 6 -- -Warning: rename(%s\renameVar11\renameVar11Sub\BADDIR\renameMe.tmp,%s\renameVar11\renameVar11Sub\BADDIR\IwasRenamed.tmp): No such file or directory in %s on line %d +Warning: rename(%s\renameVar11\renameVar11Sub\BADDIR\renameMe.tmp,%s\renameVar11\renameVar11Sub\BADDIR\IwasRenamed.tmp): The system cannot find the path specified. (code: 3) in %s on line %d bool(false) -- Iteration 7 -- @@ -118,7 +118,7 @@ bool(true) -- Iteration 11 -- -Warning: rename(BADDIR\renameMe.tmp,BADDIR\IwasRenamed.tmp): No such file or directory in %s on line %d +Warning: rename(BADDIR\renameMe.tmp,BADDIR\IwasRenamed.tmp): The system cannot find the path specified. (code: 3) in %s on line %d bool(false) -- Iteration 12 -- diff --git a/ext/standard/tests/file/rename_variation12-win32.phpt b/ext/standard/tests/file/rename_variation12-win32.phpt new file mode 100644 index 000000000..de5fc1400 --- /dev/null +++ b/ext/standard/tests/file/rename_variation12-win32.phpt @@ -0,0 +1,121 @@ +--TEST-- +Test rename() function : variation - various relative, absolute paths +--CREDITS-- +Dave Kelsey <d_kelsey@uk.ibm.com> +--SKIPIF-- +<?php +if (substr(PHP_OS, 0, 3) != 'WIN') die('skip.. for Windows'); +?> +--FILE-- +<?php +/* Prototype : bool rename(string old_name, string new_name[, resource context]) + * Description: Rename a file + * Source code: ext/standard/file.c + * Alias to functions: + */ + +/* Creating unique files in various dirs by passing relative paths to $dir arg */ + +echo "*** Testing rename() with absolute and relative paths ***\n"; +$mainDir = "renameVar11"; +$subDir = "renameVar11Sub"; +$absMainDir = dirname(__FILE__)."/".$mainDir; +mkdir($absMainDir); +$absSubDir = $absMainDir."/".$subDir; +mkdir($absSubDir); + +$fromFile = "renameMe.tmp"; +$toFile = "IwasRenamed.tmp"; + +$old_dir_path = getcwd(); +chdir(dirname(__FILE__)); + +$allDirs = array( + // absolute paths + "$absSubDir/", + "$absSubDir/../".$subDir, + "$absSubDir//.././".$subDir, + "$absSubDir/../../".$mainDir."/./".$subDir, + "$absSubDir/..///".$subDir."//..//../".$subDir, + "$absSubDir/BADDIR", + + + // relative paths + $mainDir."/".$subDir, + $mainDir."//".$subDir, + $mainDir."///".$subDir, + "./".$mainDir."/../".$mainDir."/".$subDir, + "BADDIR", +); + +for($i = 0; $i<count($allDirs); $i++) { + $j = $i+1; + $dir = $allDirs[$i]; + echo "\n-- Iteration $j --\n"; + touch($absSubDir."/".$fromFile); + $res = rename($dir."/".$fromFile, $dir."/".$toFile); + var_dump($res); + if ($res == true) { + $res = rename($dir."/".$toFile, $dir."/".$fromFile); + var_dump($res); + } + unlink($absSubDir."/".$fromFile); +} + +chdir($old_dir_path); +rmdir($absSubDir); +rmdir($absMainDir); + +echo "\n*** Done ***\n"; +?> +--EXPECTF-- +*** Testing rename() with absolute and relative paths *** + +-- Iteration 1 -- +bool(true) +bool(true) + +-- Iteration 2 -- +bool(true) +bool(true) + +-- Iteration 3 -- +bool(true) +bool(true) + +-- Iteration 4 -- +bool(true) +bool(true) + +-- Iteration 5 -- + +Warning: rename(%s/renameVar11/renameVar11Sub/..///renameVar11Sub//..//../renameVar11Sub/renameMe.tmp,%s/renameVar11/renameVar11Sub/..///renameVar11Sub//..//../renameVar11Sub/IwasRenamed.tmp): The system cannot find the path specified. (code: 3) in %s on line %d +bool(false) + +-- Iteration 6 -- + +Warning: rename(%s/renameVar11/renameVar11Sub/BADDIR/renameMe.tmp,%s/renameVar11/renameVar11Sub/BADDIR/IwasRenamed.tmp): The system cannot find the path specified. (code: 3) in %s on line %d +bool(false) + +-- Iteration 7 -- +bool(true) +bool(true) + +-- Iteration 8 -- +bool(true) +bool(true) + +-- Iteration 9 -- +bool(true) +bool(true) + +-- Iteration 10 -- +bool(true) +bool(true) + +-- Iteration 11 -- + +Warning: rename(BADDIR/renameMe.tmp,BADDIR/IwasRenamed.tmp): The system cannot find the path specified. (code: 3) in %s on line %d +bool(false) + +*** Done ***
\ No newline at end of file diff --git a/ext/standard/tests/file/rename_variation12.phpt b/ext/standard/tests/file/rename_variation12.phpt index 11274f03d..168beeffc 100644 --- a/ext/standard/tests/file/rename_variation12.phpt +++ b/ext/standard/tests/file/rename_variation12.phpt @@ -2,6 +2,10 @@ Test rename() function : variation - various relative, absolute paths --CREDITS-- Dave Kelsey <d_kelsey@uk.ibm.com> +--SKIPIF-- +<?php +if (substr(PHP_OS, 0, 3) == 'WIN') die('skip.. not for Windows'); +?> --FILE-- <?php /* Prototype : bool rename(string old_name, string new_name[, resource context]) @@ -85,12 +89,12 @@ bool(true) -- Iteration 5 -- -Warning: rename(%s/renameVar11/renameVar11Sub/..///renameVar11Sub//..//../renameVar11Sub/renameMe.tmp,%s/renameVar11/renameVar11Sub/..///renameVar11Sub//..//../renameVar11Sub/IwasRenamed.tmp): No such file or directory in %s on line %d +Warning: rename(%s/renameVar11/renameVar11Sub/..///renameVar11Sub//..//../renameVar11Sub/renameMe.tmp,%s/renameVar11/renameVar11Sub/..///renameVar11Sub//..//../renameVar11Sub/IwasRenamed.tmp): %s in %s on line %d bool(false) -- Iteration 6 -- -Warning: rename(%s/renameVar11/renameVar11Sub/BADDIR/renameMe.tmp,%s/renameVar11/renameVar11Sub/BADDIR/IwasRenamed.tmp): No such file or directory in %s on line %d +Warning: rename(%s/renameVar11/renameVar11Sub/BADDIR/renameMe.tmp,%s/renameVar11/renameVar11Sub/BADDIR/IwasRenamed.tmp): %s in %s on line %d bool(false) -- Iteration 7 -- @@ -111,7 +115,7 @@ bool(true) -- Iteration 11 -- -Warning: rename(BADDIR/renameMe.tmp,BADDIR/IwasRenamed.tmp): No such file or directory in %s on line %d +Warning: rename(BADDIR/renameMe.tmp,BADDIR/IwasRenamed.tmp): %s in %s on line %d bool(false) -*** Done ***
\ No newline at end of file +*** Done *** diff --git a/ext/standard/tests/file/rename_variation13-win32.phpt b/ext/standard/tests/file/rename_variation13-win32.phpt Binary files differindex 290095629..a86025889 100644 --- a/ext/standard/tests/file/rename_variation13-win32.phpt +++ b/ext/standard/tests/file/rename_variation13-win32.phpt diff --git a/ext/standard/tests/file/rename_variation13.phpt b/ext/standard/tests/file/rename_variation13.phpt index 123760432..24697d510 100644 --- a/ext/standard/tests/file/rename_variation13.phpt +++ b/ext/standard/tests/file/rename_variation13.phpt @@ -5,7 +5,7 @@ Dave Kelsey <d_kelsey@uk.ibm.com> --SKIPIF-- <?php if(substr(PHP_OS, 0, 3) == "WIN") - die("skip Not for Windows"); + die("skip. Not for Windows"); ?> --FILE-- <?php @@ -15,7 +15,6 @@ if(substr(PHP_OS, 0, 3) == "WIN") * Alias to functions: */ - echo "*** Testing rename() with obscure files ***\n"; $file_path = dirname(__FILE__)."/renameVar13"; $aFile = $file_path.'/afile.tmp'; @@ -74,24 +73,24 @@ Warning: rename(1,%s/renameVar13/afile.tmp): No such file or directory in %s on bool(false) -- testing '' -- -Warning: rename(%s/renameVar13/afile.tmp,): No such file or directory in %s on line %d +Warning: rename(%s/renameVar13/afile.tmp,): %s in %s on line %d bool(false) -Warning: rename(,%s/renameVar13/afile.tmp): No such file or directory in %s on line %d +Warning: rename(,%s/renameVar13/afile.tmp): %s in %s on line %d bool(false) -- testing '' -- -Warning: rename(%s/renameVar13/afile.tmp,): No such file or directory in %s on line %d +Warning: rename(%s/renameVar13/afile.tmp,): %s in %s on line %d bool(false) -Warning: rename(,%s/renameVar13/afile.tmp): No such file or directory in %s on line %d +Warning: rename(,%s/renameVar13/afile.tmp): %s in %s on line %d bool(false) -- testing '' -- -Warning: rename(%s/renameVar13/afile.tmp,): No such file or directory in %s on line %d +Warning: rename(%s/renameVar13/afile.tmp,): %s in %s on line %d bool(false) -Warning: rename(,%s/renameVar13/afile.tmp): No such file or directory in %s on line %d +Warning: rename(,%s/renameVar13/afile.tmp): %s in %s on line %d bool(false) -- testing ' ' -- bool(true) @@ -103,7 +102,7 @@ bool(false) Warning: rename(%s/renameVar13/afile.tmp,): %s in %s on line %d bool(false) -Warning: rename(,%s/renameVar13/afile.tmp): No such file or directory in %s on line %d +Warning: rename(,%s/renameVar13/afile.tmp): %s in %s on line %d bool(false) -- testing 'Array' -- @@ -129,4 +128,4 @@ bool(false) Warning: rename(php/php,%s/renameVar13/afile.tmp): %s directory in %s on line %d bool(false) -*** Done ***
\ No newline at end of file +*** Done *** diff --git a/ext/standard/tests/file/rename_variation3-win32.phpt b/ext/standard/tests/file/rename_variation3-win32.phpt index b251fc448..b5da58781 100644 --- a/ext/standard/tests/file/rename_variation3-win32.phpt +++ b/ext/standard/tests/file/rename_variation3-win32.phpt @@ -24,6 +24,9 @@ mkdir($dirname); $filename = "$file_path/rename_variation3.tmp"; $fp = fopen($filename, "w"); +if (!$fp) { + die("Cannot create $filename\n"); +} fclose($fp); echo "\n-- Renaming file to same file name --\n"; @@ -68,7 +71,7 @@ bool(true) -- Renaming existing file to existing directory name -- -Warning: rename(%s/rename_variation3.tmp,%s/rename_variation3_dir): No such file or directory in %s on line %d +Warning: rename(%s/rename_variation3.tmp,%s/rename_variation3_dir): Access is denied. (code: 5) in %s on line %d bool(false) bool(true) bool(true) diff --git a/ext/standard/tests/file/rename_variation6-win32.phpt b/ext/standard/tests/file/rename_variation6-win32.phpt index 6305447b9..14d59d0ad 100644 --- a/ext/standard/tests/file/rename_variation6-win32.phpt +++ b/ext/standard/tests/file/rename_variation6-win32.phpt @@ -4,6 +4,10 @@ Test rename() function: usage variations-6 <?php if (substr(PHP_OS, 0, 3) != 'WIN') die('skip.. for Windows'); if (!function_exists("symlink")) die("skip symlinks are not supported"); +$ret = exec('mklink rename_variation13tmp.lnk ' . __FILE__ .' 2>&1', $out); +if (strpos($ret, 'privilege')) { + die('skip. SeCreateSymbolicLinkPrivilege not enable for this user.'); +} ?> --FILE-- <?php diff --git a/ext/standard/tests/file/rename_variation8-win32.phpt b/ext/standard/tests/file/rename_variation8-win32.phpt new file mode 100644 index 000000000..1d25a12e0 --- /dev/null +++ b/ext/standard/tests/file/rename_variation8-win32.phpt @@ -0,0 +1,70 @@ +--TEST--
+Test rename() function: variation
+--SKIPIF--
+<?php
+if (substr(PHP_OS, 0, 3) != 'WIN') die('skip.. for Windows');
+?>
+--FILE--
+<?php
+/* Prototype: bool rename ( string $oldname, string $newname [, resource $context] );
+ Description: Renames a file or directory
+*/
+
+echo "\n*** Testing rename() on non-existing file ***\n";
+$file_path = dirname(__FILE__);
+
+// try renaming a non existing file
+$src_name = $file_path."/non_existent_file.tmp";
+$dest_name = $file_path."/rename_variation8_new.tmp";
+var_dump( rename($src_name, $dest_name) );
+
+// ensure that $dest_name didn't get created
+var_dump( file_exists($src_name) ); // expecting false
+var_dump( file_exists($dest_name) ); // expecting false
+
+// rename a existing dir to new name
+echo "\n*** Testing rename() on existing directory ***\n";
+$dir_name = $file_path."/rename_basic_dir";
+mkdir($dir_name);
+$new_dir_name = $file_path."/rename_basic_dir1";
+var_dump( rename($dir_name, $new_dir_name) );
+//ensure that $new_dir_name got created
+var_dump( file_exists($dir_name) ); // expecting false
+var_dump( file_exists($new_dir_name) ); // expecting true
+
+// try to rename an non_existing dir
+echo "\n*** Testing rename() on non-existing directory ***\n";
+$non_existent_dir_name = $file_path."/non_existent_dir";
+$new_dir_name = "$file_path/rename_basic_dir2";
+var_dump( rename($non_existent_dir_name, $new_dir_name) );
+// ensure that $new_dir_name didn't get created
+var_dump( file_exists($non_existent_dir_name) ); // expecting flase
+var_dump( file_exists($new_dir_name) ); // expecting false
+
+echo "Done\n";
+?>
+--CLEAN--
+<?php
+rmdir(dirname(__FILE__)."/rename_basic_dir1");
+?>
+--EXPECTF--
+*** Testing rename() on non-existing file ***
+
+Warning: rename(%s/non_existent_file.tmp,%s/rename_variation8_new.tmp): The system cannot find the file specified. (code: 2) in %s on line %d
+bool(false)
+bool(false)
+bool(false)
+
+*** Testing rename() on existing directory ***
+bool(true)
+bool(false)
+bool(true)
+
+*** Testing rename() on non-existing directory ***
+
+Warning: rename(%s/non_existent_dir,%s/rename_basic_dir2): The system cannot find the file specified. (code: 2) in %s on line %d
+bool(false)
+bool(false)
+bool(false)
+Done
+
diff --git a/ext/standard/tests/file/rename_variation8.phpt b/ext/standard/tests/file/rename_variation8.phpt index 6b3644aee..6e236c376 100644 --- a/ext/standard/tests/file/rename_variation8.phpt +++ b/ext/standard/tests/file/rename_variation8.phpt @@ -1,5 +1,9 @@ --TEST-- Test rename() function: variation +--SKIPIF-- +<?php +if (substr(PHP_OS, 0, 3) == 'WIN') die('skip.. not for Windows'); +?> --FILE-- <?php /* Prototype: bool rename ( string $oldname, string $newname [, resource $context] ); @@ -41,6 +45,7 @@ echo "Done\n"; ?> --CLEAN-- <?php +unlink(dirname(__FILE__)."/rename_basic_new2.tmp"); rmdir(dirname(__FILE__)."/rename_basic_dir1"); ?> --EXPECTF-- diff --git a/ext/standard/tests/file/rename_variation9.phpt b/ext/standard/tests/file/rename_variation9.phpt index d923e4a3d..272fa9402 100644 --- a/ext/standard/tests/file/rename_variation9.phpt +++ b/ext/standard/tests/file/rename_variation9.phpt @@ -41,7 +41,7 @@ echo "Done\n"; unlink(dirname(__FILE__)."/rename_variation9_new.tmp"); rmdir(dirname(__FILE__)."/rename_variation_dir9_new"); ?> ---EXPECTF-- +--EXPECT-- *** Testing rename() by giving stream context as third argument *** bool(true) bool(false) diff --git a/ext/standard/tests/file/rmdir_variation1-win32.phpt b/ext/standard/tests/file/rmdir_variation1-win32.phpt index 0732821c5..2516e6162 100644 --- a/ext/standard/tests/file/rmdir_variation1-win32.phpt +++ b/ext/standard/tests/file/rmdir_variation1-win32.phpt @@ -90,35 +90,35 @@ foreach($inputs as $key =>$value) { *** Testing rmdir() : usage variation *** --uppercase NULL-- -Error: 2 - rmdir(): No such file or directory, %s(%d) +Error: 2 - rmdir(): %s, %s(%d) bool(false) --lowercase null-- -Error: 2 - rmdir(): No such file or directory, %s(%d) +Error: 2 - rmdir(): %s, %s(%d) bool(false) --lowercase false-- -Error: 2 - rmdir(): No such file or directory, %s(%d) +Error: 2 - rmdir(): %s, %s(%d) bool(false) --uppercase FALSE-- -Error: 2 - rmdir(): No such file or directory, %s(%d) +Error: 2 - rmdir(): %s, %s(%d) bool(false) --empty string DQ-- -Error: 2 - rmdir(): No such file or directory, %s(%d) +Error: 2 - rmdir(): %s, %s(%d) bool(false) --empty string SQ-- -Error: 2 - rmdir(): No such file or directory, %s(%d) +Error: 2 - rmdir(): %s, %s(%d) bool(false) --undefined var-- -Error: 2 - rmdir(): No such file or directory, %s(%d) +Error: 2 - rmdir(): %s, %s(%d) bool(false) --unset var-- -Error: 2 - rmdir(): No such file or directory, %s(%d) +Error: 2 - rmdir(): %s, %s(%d) bool(false) --single space-- diff --git a/ext/standard/tests/file/rmdir_variation1.phpt b/ext/standard/tests/file/rmdir_variation1.phpt index a7a499007..04fee0ee2 100644 --- a/ext/standard/tests/file/rmdir_variation1.phpt +++ b/ext/standard/tests/file/rmdir_variation1.phpt @@ -81,7 +81,7 @@ $inputs = array( foreach($inputs as $key =>$value) { echo "\n--$key--\n"; - var_dump( rmdir($value) ); + var_dump(rmdir($value)); }; ?> diff --git a/ext/standard/tests/file/tempnam_variation3-win32.phpt b/ext/standard/tests/file/tempnam_variation3-win32.phpt index ec7718f97..fb457cb6a 100644 --- a/ext/standard/tests/file/tempnam_variation3-win32.phpt +++ b/ext/standard/tests/file/tempnam_variation3-win32.phpt @@ -3,7 +3,7 @@ Test tempnam() function: usage variations - obscure prefixes --SKIPIF-- <?php if(substr(PHP_OS, 0, 3) != "WIN") - die("skip run only on Windows"); + die("skip run only on Windows"); ?> --FILE-- <?php @@ -15,106 +15,101 @@ if(substr(PHP_OS, 0, 3) != "WIN") echo "*** Testing tempnam() with obscure prefixes ***\n"; $file_path = dirname(__FILE__)."/tempnamVar3"; -mkdir($file_path); +if (!mkdir($file_path)) { + echo "Failed, cannot create temp dir $filepath\n"; + exit(1); +} + +$file_path = realpath($file_path); /* An array of prefixes */ $names_arr = array( - /* Invalid args */ - -1, - TRUE, - FALSE, - NULL, - "", - " ", - "\0", - array(), + /* Valid args (casting)*/ + -1, + TRUE, + FALSE, + NULL, + "", + " ", + "\0", + /* Invalid args */ + array(), + + /* Valid args*/ + /* prefix with path separator of a non existing directory*/ + "/no/such/file/dir", + "php/php" +); - /* prefix with path separator of a non existing directory*/ - "/no/such/file/dir", - "php/php" +$res_arr = array( + /* Invalid args */ + true, + true, + true, + true, + true, + true, + true, + false, + /* prefix with path separator of a non existing directory*/ + true, + true ); for( $i=0; $i<count($names_arr); $i++ ) { - echo "-- Iteration $i --\n"; - $file_name = tempnam("$file_path", $names_arr[$i]); + echo "-- Iteration $i --\n"; + $file_name = tempnam($file_path, $names_arr[$i]); - /* creating the files in existing dir */ - if( file_exists($file_name) ) { - echo "File name is => "; - print($file_name); - echo "\n"; + /* creating the files in existing dir */ + if (file_exists($file_name) && !$res_arr[$i]) { + echo "Failed\n"; + } + if ($res_arr[$i]) { + $file_dir = dirname($file_name); + if (realpath($file_dir) == $file_path || realpath($file_dir . "\\") == $file_path) { + echo "OK\n"; + } else { + echo "Failed, not created in the correct directory " . realpath($file_dir) . ' vs ' . $file_path ."\n"; + } + + if (!is_writable($file_name)) { + printf("%o\n", fileperms($file_name) ); - echo "File permissions are => "; - printf("%o", fileperms($file_name) ); - echo "\n"; - - echo "File created in => "; - $file_dir = dirname($file_name); - if (realpath($file_dir) == realpath(sys_get_temp_dir()) || realpath($file_dir."\\") == realpath(sys_get_temp_dir())) { - echo "temp dir\n"; - } - else if (realpath($file_dir) == realpath($file_path) || realpath($file_dir."\\") == realpath($file_path)) { - echo "directory specified\n"; - } - else { - echo "unknown location\n"; - } - } - else { - echo "-- File is not created --\n"; - } - - unlink($file_name); + } + } else { + echo "OK\n"; + } + @unlink($file_name); } rmdir($file_path); -echo "\n*** Done ***\n"; +echo "\n*** Done. ***\n"; ?> --EXPECTF-- *** Testing tempnam() with obscure prefixes *** -- Iteration 0 -- -File name is => %s\%s -File permissions are => 100666 -File created in => directory specified +OK -- Iteration 1 -- -File name is => %s\%s -File permissions are => 100666 -File created in => directory specified +OK -- Iteration 2 -- -File name is => %s\%s -File permissions are => 100666 -File created in => directory specified +OK -- Iteration 3 -- -File name is => %s\%s -File permissions are => 100666 -File created in => directory specified +OK -- Iteration 4 -- -File name is => %s\%s -File permissions are => 100666 -File created in => directory specified +OK -- Iteration 5 -- -File name is => %s\%s -File permissions are => 100666 -File created in => directory specified +Failed, not created in the correct directory %s vs %s +0 -- Iteration 6 -- -File name is => %s\%s -File permissions are => 100666 -File created in => directory specified +OK -- Iteration 7 -- -Warning: tempnam() expects parameter 2 to be string, array given in %s on line %d --- File is not created -- - -Warning: unlink(): No such file or directory in %s on line %d +Warning: tempnam() expects parameter 2 to be string, array given in %s\ext\standard\tests\file\tempnam_variation3-win32.php on line %d +OK -- Iteration 8 -- -File name is => %s\di%s -File permissions are => 100666 -File created in => directory specified +OK -- Iteration 9 -- -File name is => %s\ph%s -File permissions are => 100666 -File created in => directory specified - -*** Done *** +OK +*** Done. *** diff --git a/ext/standard/tests/file/tempnam_variation3.phpt b/ext/standard/tests/file/tempnam_variation3.phpt index a0b9511b6..69ab16c89 100644 --- a/ext/standard/tests/file/tempnam_variation3.phpt +++ b/ext/standard/tests/file/tempnam_variation3.phpt @@ -108,7 +108,7 @@ File created in => directory specified Warning: tempnam() expects parameter 2 to be string, array given in %s on line %d -- File is not created -- -Warning: unlink(): No such file or directory in %s on line %d +Warning: unlink(): %s in %s on line %d -- Iteration 8 -- File name is => %s/dir%s File permissions are => 100600 diff --git a/ext/standard/tests/file/tempnam_variation7-win32.phpt b/ext/standard/tests/file/tempnam_variation7-win32.phpt index 5096934e0..34e352a49 100644 --- a/ext/standard/tests/file/tempnam_variation7-win32.phpt +++ b/ext/standard/tests/file/tempnam_variation7-win32.phpt @@ -17,50 +17,47 @@ if(substr(PHP_OS, 0, 3) != "WIN") echo "*** Testing tempnam() with invalid/non-existing directory names ***\n"; /* An array of names, which will be passed as a dir name */ $names_arr = array( - /* Invalid args */ - -1, - TRUE, - FALSE, - NULL, - "", - " ", - "\0", - array(), - - /* Non-existing dirs */ - "/no/such/file/dir", - "php" + /* Invalid args */ + -1, + TRUE, + FALSE, + NULL, + "", + " ", + "\0", + array(), + /* Non-existing dirs */ + "/no/such/file/dir", + "php" ); for( $i=0; $i<count($names_arr); $i++ ) { - echo "-- Iteration $i --\n"; - $file_name = tempnam($names_arr[$i], "tempnam_variation3.tmp"); + echo "-- Iteration $i --\n"; + $file_name = tempnam($names_arr[$i], "tempnam_variation3.tmp"); + + if( file_exists($file_name) ){ + + echo "File name is => "; + print($file_name); + echo "\n"; - if( file_exists($file_name) ){ + echo "File permissions are => "; + printf("%o", fileperms($file_name) ); + echo "\n"; - echo "File name is => "; - print($file_name); - echo "\n"; + echo "File created in => "; + $file_dir = dirname($file_name); + if (realpath($file_dir) == realpath(sys_get_temp_dir()) || realpath($file_dir."\\") == realpath(sys_get_temp_dir())) { + echo "temp dir\n"; + } else { + echo "unknown location\n"; + } + } else { + echo "-- File is not created --\n"; + } - echo "File permissions are => "; - printf("%o", fileperms($file_name) ); - echo "\n"; - - echo "File created in => "; - $file_dir = dirname($file_name); - if (realpath($file_dir) == realpath(sys_get_temp_dir()) || realpath($file_dir."\\") == realpath(sys_get_temp_dir())) { - echo "temp dir\n"; - } - else { - echo "unknown location\n"; - } - } - else { - echo "-- File is not created --\n"; - } - - unlink($file_name); + unlink($file_name); } echo "\n*** Done ***\n"; @@ -100,7 +97,7 @@ File created in => temp dir Warning: tempnam() expects parameter 1 to be string, array given in %s on line %d -- File is not created -- -Warning: unlink(): No such file or directory in %s on line %d +Warning: unlink(): %s in %s on line %d -- Iteration 8 -- File name is => %s%et%s File permissions are => 100666 diff --git a/ext/standard/tests/file/tempnam_variation7.phpt b/ext/standard/tests/file/tempnam_variation7.phpt index 0e314dabe..18d074d28 100644 --- a/ext/standard/tests/file/tempnam_variation7.phpt +++ b/ext/standard/tests/file/tempnam_variation7.phpt @@ -102,7 +102,7 @@ File created in => temp dir Warning: tempnam() expects parameter 1 to be string, array given in %s on line %d -- File is not created -- -Warning: unlink(): No such file or directory in %s on line %d +Warning: unlink(): %s in %s on line %d -- Iteration 8 -- File name is => %s%etempnam_variation3.tmp%s File permissions are => 100600 diff --git a/ext/standard/tests/file/unlink_error-win32.phpt b/ext/standard/tests/file/unlink_error-win32.phpt index 2c913aeb5..e55f6ed5c 100644 --- a/ext/standard/tests/file/unlink_error-win32.phpt +++ b/ext/standard/tests/file/unlink_error-win32.phpt @@ -77,15 +77,15 @@ bool(true) -- Testing unlink() on invalid arguments -- -Warning: unlink(): No such file or directory in %s on line %d +Warning: unlink(): %s in %s on line %d bool(false) bool(false) -Warning: unlink(): No such file or directory in %s on line %d +Warning: unlink(): %s in %s on line %d bool(false) bool(false) -Warning: unlink(): No such file or directory in %s on line %d +Warning: unlink(): %s in %s on line %d bool(false) bool(false) diff --git a/ext/standard/tests/file/userstreams_003.phpt b/ext/standard/tests/file/userstreams_003.phpt index b30636d20..01a8efbf5 100644 --- a/ext/standard/tests/file/userstreams_003.phpt +++ b/ext/standard/tests/file/userstreams_003.phpt @@ -101,7 +101,7 @@ bool(false) value: int(0) ptrparam: -int(8192) +int(%d) $option === 3 === 3: bool(true) $value === 0 === 0: diff --git a/ext/standard/tests/file/windows_acls/common.inc b/ext/standard/tests/file/windows_acls/common.inc index 2a1adeb0a..c4276014a 100644 --- a/ext/standard/tests/file/windows_acls/common.inc +++ b/ext/standard/tests/file/windows_acls/common.inc @@ -118,7 +118,7 @@ function create_dir($name, $perms) { function create_file($name, $perms) { if (empty($name)) { - echo "create_dir: Empty name is not allowed\n"; + echo "create_file: Empty name is not allowed\n"; return; } diff --git a/ext/standard/tests/file/windows_links/bug48746.phpt b/ext/standard/tests/file/windows_links/bug48746.phpt new file mode 100644 index 000000000..6c88c6319 --- /dev/null +++ b/ext/standard/tests/file/windows_links/bug48746.phpt @@ -0,0 +1,55 @@ +--TEST--
+Bug#48746 - Junction not working properly
+
+--CREDIT--
+Venkat Raman Don (don.raman@microsoft.com)
+
+--SKIPIF--
+<?php
+if(substr(PHP_OS, 0, 3) != 'WIN' ) {
+ die('skip windows only test');
+}
+$cmd = "mklink.exe /?";
+$ret = @exec($cmd, $output, $return_val);
+if (count($output) == 0) {
+ die("mklink.exe not found in PATH");
+}
+?>
+--FILE--
+<?php
+$old_dir = __DIR__;
+$dirname = __DIR__ . "\\mnt\\test\\directory";
+mkdir($dirname, 0700, true);
+chdir(__DIR__ . "\\mnt\\test");
+$drive = substr(__DIR__, 0, 2);
+$pathwithoutdrive = substr(__DIR__, 2);
+$ret = exec("mountvol " . $drive . " /L", $output, $ret_val);
+exec("mklink /j mounted_volume " . $ret, $output, $ret_val);
+$fullpath = "mounted_volume" . $pathwithoutdrive;
+exec("mklink /j mklink_junction directory", $output, $ret_val);
+var_dump(file_exists("directory"));
+var_dump(file_exists("mklink_junction"));
+var_dump(file_exists("mounted_volume"));
+var_dump(file_exists("$fullpath"));
+var_dump(is_dir("mklink_junction"));
+var_dump(is_dir("$fullpath"));
+var_dump(is_readable("mklink_junction"));
+var_dump(is_writeable("$fullpath"));
+chdir($old_dir);
+
+rmdir(__DIR__ . "\\mnt\\test\\directory");
+rmdir(__DIR__ . "\\mnt\\test\\mklink_junction");
+rmdir(__DIR__ . "\\mnt\\test\\mounted_volume");
+rmdir(__DIR__ . "\\mnt\\test");
+rmdir(__DIR__ . "\\mnt");
+
+?>
+--EXPECT--
+bool(true)
+bool(true)
+bool(true)
+bool(true)
+bool(true)
+bool(true)
+bool(true)
+bool(true)
diff --git a/ext/standard/tests/file/windows_links/bug48746_1.phpt b/ext/standard/tests/file/windows_links/bug48746_1.phpt new file mode 100644 index 000000000..ca8450a89 --- /dev/null +++ b/ext/standard/tests/file/windows_links/bug48746_1.phpt @@ -0,0 +1,56 @@ +--TEST--
+Bug#48746 - Junction not working properly
+
+--CREDIT--
+Venkat Raman Don (don.raman@microsoft.com)
+
+--SKIPIF--
+<?php
+if(substr(PHP_OS, 0, 3) != 'WIN' ) {
+ die('skip windows only test');
+}
+$cmd = "mklink.exe /?";
+$ret = @exec($cmd, $output, $return_val);
+if (count($output) == 0) {
+ die("mklink.exe not found in PATH");
+}
+?>
+--FILE--
+<?php
+$old_dir = __DIR__;
+$dirname = __DIR__ . "\\mnt\\test\\directory";
+exec("mkdir " . $dirname, $output, $ret_val);
+chdir(__DIR__ . "\\mnt\\test");
+$drive = substr(__DIR__, 0, 2);
+$pathwithoutdrive = substr(__DIR__, 2);
+$ret = exec("mountvol " . $drive . " /L", $output, $ret_val);
+exec("mklink /j mounted_volume " . $ret, $output, $ret_val);
+$fullpath = "mounted_volume" . $pathwithoutdrive;
+exec("mklink /j mklink_junction directory", $output, $ret_val);
+file_put_contents("mklink_junction\\a.php", "<?php echo \"I am included.\n\" ?>");
+include_once "mklink_junction\\a.php";
+file_put_contents("$fullpath\\mnt\\test\\directory\\b.php", "<?php echo \"I am included.\n\" ?>");
+require "$fullpath\\mnt\\test\\directory\\b.php";
+file_put_contents("$fullpath\\mnt\\test\\mklink_junction\\c.php", "<?php echo \"I am included.\n\" ?>");
+require_once "$fullpath\\mnt\\test\\mklink_junction\\c.php";
+var_dump(is_file("mklink_junction\\a.php"));
+var_dump(is_file("$fullpath\\mnt\\test\\directory\\b.php"));
+var_dump(is_file("$fullpath\\mnt\\test\\mklink_junction\\c.php"));
+unlink("$fullpath\\mnt\\test\\directory\\b.php");
+unlink("$fullpath\\mnt\\test\\mklink_junction\\c.php");
+unlink("mklink_junction\\a.php");
+chdir($old_dir);
+rmdir(__DIR__ . "\\mnt\\test\\directory");
+rmdir(__DIR__ . "\\mnt\\test\\mklink_junction");
+rmdir(__DIR__ . "\\mnt\\test\\mounted_volume");
+rmdir(__DIR__ . "\\mnt\\test");
+rmdir(__DIR__ . "\\mnt");
+
+?>
+--EXPECT--
+I am included.
+I am included.
+I am included.
+bool(true)
+bool(true)
+bool(true) diff --git a/ext/standard/tests/file/windows_links/bug48746_2.phpt b/ext/standard/tests/file/windows_links/bug48746_2.phpt new file mode 100644 index 000000000..7beed1691 --- /dev/null +++ b/ext/standard/tests/file/windows_links/bug48746_2.phpt @@ -0,0 +1,66 @@ +--TEST--
+Bug#48746 - Junction not working properly
+
+--CREDIT--
+Venkat Raman Don (don.raman@microsoft.com)
+
+--SKIPIF--
+<?php
+if(substr(PHP_OS, 0, 3) != 'WIN' ) {
+ die('skip windows only test');
+}
+$ret = exec('mklink bug48746_tmp.lnk ' . __FILE__ .' 2>&1', $out);
+if (strpos($ret, 'privilege')) {
+ die('skip. SeCreateSymbolicLinkPrivilege not enable for this user.');
+}
+unlink('mklink bug48746_tmp.lnk');
+?>
+--FILE--
+<?php
+$old_dir = __DIR__;
+$dirname = __DIR__ . "\\mnt\\test\\directory";
+exec("mkdir " . $dirname, $output, $ret_val);
+chdir(__DIR__ . "\\mnt\\test");
+$drive = substr(__DIR__, 0, 2);
+$pathwithoutdrive = substr(__DIR__, 2);
+$ret = exec("mountvol " . $drive . " /L", $output, $ret_val);
+exec("mklink /j mounted_volume " . $ret, $output, $ret_val);
+$fullpath = "mounted_volume" . $pathwithoutdrive;
+exec("mklink /j mklink_junction directory", $output, $ret_val);
+file_put_contents("mklink_junction\\a.php", "<?php echo \"I am included.\n\" ?>");
+file_put_contents("$fullpath\\mnt\\test\\directory\\b.php", "<?php echo \"I am included.\n\" ?>");
+print_r(scandir("mklink_junction"));
+print_r(scandir("$fullpath\\mnt\\test\\directory"));
+print_r(scandir("$fullpath\\mnt\\test\\mklink_junction"));
+unlink("$fullpath\\mnt\\test\\directory\\b.php");
+unlink("mklink_junction\\a.php");
+chdir($old_dir);
+rmdir(__DIR__ . "\\mnt\\test\\directory");
+rmdir(__DIR__ . "\\mnt\\test\\mklink_junction");
+rmdir(__DIR__ . "\\mnt\\test\\mounted_volume");
+rmdir(__DIR__ . "\\mnt\\test");
+rmdir(__DIR__ . "\\mnt");
+
+?>
+--EXPECT--
+Array
+(
+ [0] => .
+ [1] => ..
+ [2] => a.php
+ [3] => b.php
+)
+Array
+(
+ [0] => .
+ [1] => ..
+ [2] => a.php
+ [3] => b.php
+)
+Array
+(
+ [0] => .
+ [1] => ..
+ [2] => a.php
+ [3] => b.php
+) diff --git a/ext/standard/tests/file/windows_links/bug48746_3.phpt b/ext/standard/tests/file/windows_links/bug48746_3.phpt new file mode 100644 index 000000000..a0dcbdc02 --- /dev/null +++ b/ext/standard/tests/file/windows_links/bug48746_3.phpt @@ -0,0 +1,48 @@ +--TEST--
+Bug#48746 - Junction not working properly
+
+--CREDIT--
+Venkat Raman Don (don.raman@microsoft.com)
+
+--SKIPIF--
+<?php
+if(substr(PHP_OS, 0, 3) != 'WIN' ) {
+ die('skip windows only test');
+}
+$ret = exec('junction /? 2>&1', $out);
+if (strpos($out[0], 'recognized')) {
+ die('skip. junction.exe not found in PATH.');
+}
+
+?>
+--FILE--
+<?php
+$old_dir = __DIR__;
+$dirname = __DIR__ . "\\mnt\\test\\directory";
+exec("mkdir " . $dirname, $output, $ret_val);
+chdir(__DIR__ . "\\mnt\\test");
+exec("junction junction directory", $output, $ret_val);
+file_put_contents("junction\\a.php", "<?php echo \"I am included.\n\" ?>");
+file_put_contents("junction\\b.php", "<?php echo \"I am included.\n\" ?>");
+include "junction/a.php";
+require_once "junction\\b.php";
+print_r(scandir("junction"));
+unlink("junction\\a.php");
+unlink("junction\\b.php");
+chdir($old_dir);
+rmdir(__DIR__ . "\\mnt\\test\\directory");
+rmdir(__DIR__ . "\\mnt\\test\\junction");
+rmdir(__DIR__ . "\\mnt\\test");
+rmdir(__DIR__ . "\\mnt");
+
+?>
+--EXPECT--
+I am included.
+I am included.
+Array
+(
+ [0] => .
+ [1] => ..
+ [2] => a.php
+ [3] => b.php
+) diff --git a/ext/standard/tests/general_functions/.getservbyport_basic.phpt.swp b/ext/standard/tests/general_functions/.getservbyport_basic.phpt.swp Binary files differdeleted file mode 100644 index dc8000aa0..000000000 --- a/ext/standard/tests/general_functions/.getservbyport_basic.phpt.swp +++ /dev/null diff --git a/ext/standard/tests/general_functions/bug49692.ini b/ext/standard/tests/general_functions/bug49692.ini new file mode 100644 index 000000000..5def69a2b --- /dev/null +++ b/ext/standard/tests/general_functions/bug49692.ini @@ -0,0 +1,4 @@ +//my.ini file +[sitemap] +/home = default:index +/info = default:info diff --git a/ext/standard/tests/general_functions/bug49692.phpt b/ext/standard/tests/general_functions/bug49692.phpt new file mode 100644 index 000000000..80a1612d9 --- /dev/null +++ b/ext/standard/tests/general_functions/bug49692.phpt @@ -0,0 +1,20 @@ +--TEST-- +Bug #49692: parse_ini_file() throws errors when key contains '/' (forward slash) +--CREDITS-- +Rafael Dohms <rdohms [at] gmail [dot] com> +--FILE-- +<?php + +var_dump(parse_ini_file('bug49692.ini', true)); + +?> +--EXPECTF-- +array(1) { + ["sitemap"]=> + array(2) { + ["/home"]=> + string(13) "default:index" + ["/info"]=> + string(12) "default:info" + } +} diff --git a/ext/standard/tests/general_functions/bug49847.phpt b/ext/standard/tests/general_functions/bug49847.phpt new file mode 100644 index 000000000..8895202d0 --- /dev/null +++ b/ext/standard/tests/general_functions/bug49847.phpt @@ -0,0 +1,25 @@ +--TEST-- +Bug #49847 (exec() fails on lines larger then 4095 bytes) +--FILE-- +<?php +$iswin = substr(PHP_OS, 0, 3) == "WIN"; + +if ($iswin) { + $f = dirname(__FILE__) . '\\bug49847.tmp'; + $s = str_repeat(' ', 4097); + $s .= '1'; + file_put_contents($f, $s); + exec('more ' . $f, $output); +} else { + exec("printf %4098d 1", $output); +} +var_dump($output); +if ($iswin) { + unlink($f); +} +?> +--EXPECTF-- +array(1) { + [0]=> + string(4098) "%s 1" +} diff --git a/ext/standard/tests/general_functions/bug50690.phpt b/ext/standard/tests/general_functions/bug50690.phpt new file mode 100644 index 000000000..4d9f0dc5e --- /dev/null +++ b/ext/standard/tests/general_functions/bug50690.phpt @@ -0,0 +1,14 @@ +--TEST--
+Bug #23650 (putenv() does not assign values when the value is one character)
+--FILE--
+<?php
+putenv("foo=ab");
+putenv("bar=c");
+var_dump(getenv("foo"));
+var_dump(getenv("bar"));
+var_dump(getenv("thisvardoesnotexist"));
+?>
+--EXPECT--
+string(2) "ab"
+string(1) "c"
+bool(false)
diff --git a/ext/standard/tests/general_functions/bug50732.phpt b/ext/standard/tests/general_functions/bug50732.phpt new file mode 100644 index 000000000..ed8341dec --- /dev/null +++ b/ext/standard/tests/general_functions/bug50732.phpt @@ -0,0 +1,12 @@ +--TEST-- +Bug #50732 (exec() adds single byte twice to $output array) +--FILE-- +<?php +exec("echo x", $output); +var_dump($output); +?> +--EXPECT-- +array(1) { + [0]=> + string(1) "x" +} diff --git a/ext/standard/tests/general_functions/get_cfg_var_variation8.phpt b/ext/standard/tests/general_functions/get_cfg_var_variation8.phpt index 22188c7e6..31bcb80fc 100644 --- a/ext/standard/tests/general_functions/get_cfg_var_variation8.phpt +++ b/ext/standard/tests/general_functions/get_cfg_var_variation8.phpt @@ -14,7 +14,7 @@ var_dump(get_cfg_var( 'register_globals' ) ); ?> --EXPECTF-- -PHP Warning: Directive 'register_globals' is deprecated in PHP 5.3 and greater in %s on line 0 +Warning: Directive 'register_globals' is deprecated in PHP 5.3 and greater in %s on line 0 *** Test by calling method or function with deprecated option *** string(1) "1" diff --git a/ext/standard/tests/general_functions/import_request.phpt b/ext/standard/tests/general_functions/import_request.phpt index a1181471c..0f9e93bf0 100644 --- a/ext/standard/tests/general_functions/import_request.phpt +++ b/ext/standard/tests/general_functions/import_request.phpt @@ -30,24 +30,24 @@ echo "Done\n"; --EXPECTF-- Warning: import_request_variables() expects at least 1 parameter, 0 given in %s on line %d NULL -NULL +bool(false) Notice: import_request_variables(): No prefix specified - possible security hazard in %s on line %d -NULL +bool(false) Notice: import_request_variables(): No prefix specified - possible security hazard in %s on line %d Warning: import_request_variables(): Attempted GLOBALS variable overwrite in %s on line %d Warning: import_request_variables(): Numeric key detected - possible security hazard in %s on line %d -NULL +bool(true) Notice: Undefined variable: ap in %s on line %d string(1) "1" string(3) "heh" string(1) "3" NULL -NULL +bool(true) Notice: Undefined variable: g_ap in %s on line %d string(1) "1" @@ -55,7 +55,7 @@ string(3) "heh" string(1) "3" NULL string(2) "hm" -NULL +bool(true) string(1) "1" string(3) "heh" string(1) "3" @@ -66,7 +66,7 @@ array(1) { [0]=> string(2) "ar" } -NULL +bool(true) Notice: Undefined variable: r_ap in %s on line %d string(1) "1" diff --git a/ext/standard/tests/general_functions/is_callable_basic1.phpt b/ext/standard/tests/general_functions/is_callable_basic1.phpt index e836d734f..fe4d6e26e 100644 --- a/ext/standard/tests/general_functions/is_callable_basic1.phpt +++ b/ext/standard/tests/general_functions/is_callable_basic1.phpt @@ -64,7 +64,7 @@ check_iscallable($defined_functions); ?> ===DONE=== ---EXPECT--- +--EXPECT-- *** Testing is_callable() on defined functions *** -- Iteration 1 -- bool(true) @@ -106,4 +106,4 @@ Hello_World bool(true) bool(true) Hello_World -===DONE===
\ No newline at end of file +===DONE=== diff --git a/ext/standard/tests/general_functions/phpcredits.phpt b/ext/standard/tests/general_functions/phpcredits.phpt index 69515dfe6..0aff6142f 100644 --- a/ext/standard/tests/general_functions/phpcredits.phpt +++ b/ext/standard/tests/general_functions/phpcredits.phpt @@ -37,7 +37,7 @@ Language Design & Concept PHP Quality Assurance Team %a -PHP Website Team +%wWebsites and Infrastructure team%w %a bool(true) diff --git a/ext/standard/tests/general_functions/proc_nice_basic.phpt b/ext/standard/tests/general_functions/proc_nice_basic.phpt index 5a9575627..3a958901a 100644 --- a/ext/standard/tests/general_functions/proc_nice_basic.phpt +++ b/ext/standard/tests/general_functions/proc_nice_basic.phpt @@ -5,6 +5,10 @@ Italian PHP TestFest 2009 Cesena 19-20-21 june Fabio Fabbrucci (fabbrucci@grupporetina.com) Michele Orselli (mo@ideato.it) Simone Gentili (sensorario@gmail.com) +--SKIPIF-- +<?php +if(!function_exists('proc_nice')) die("skip. proc_nice not available "); +?> --FILE-- <?php function getNice($id) diff --git a/ext/standard/tests/general_functions/proc_nice_error.phpt b/ext/standard/tests/general_functions/proc_nice_error.phpt index c50812c86..09f84fa55 100644 --- a/ext/standard/tests/general_functions/proc_nice_error.phpt +++ b/ext/standard/tests/general_functions/proc_nice_error.phpt @@ -1,5 +1,9 @@ --TEST-- Test function proc_nice() by calling it more than or less than its expected arguments +--SKIPIF-- +<?php +if(!function_exists('proc_nice')) die("skip. proc_nice not available "); +?> --FILE-- <?php diff --git a/ext/standard/tests/general_functions/proc_nice_variation1.phpt b/ext/standard/tests/general_functions/proc_nice_variation1.phpt index b86155c4b..8c2bdf0df 100644 --- a/ext/standard/tests/general_functions/proc_nice_variation1.phpt +++ b/ext/standard/tests/general_functions/proc_nice_variation1.phpt @@ -5,6 +5,10 @@ Italian PHP TestFest 2009 Cesena 19-20-21 june Fabio Fabbrucci (fabbrucci@grupporetina.com) Michele Orselli (mo@ideato.it) Simone Gentili (sensorario@gmail.com) +--SKIPIF-- +<?php +if(!function_exists('proc_nice')) die("skip. proc_nice not available "); +?> --FILE-- <?php diff --git a/ext/standard/tests/general_functions/proc_nice_variation2.phpt b/ext/standard/tests/general_functions/proc_nice_variation2.phpt index 620fe9144..42cbf9e00 100644 --- a/ext/standard/tests/general_functions/proc_nice_variation2.phpt +++ b/ext/standard/tests/general_functions/proc_nice_variation2.phpt @@ -5,6 +5,10 @@ Italian PHP TestFest 2009 Cesena 19-20-21 june Fabio Fabbrucci (fabbrucci@grupporetina.com) Michele Orselli (mo@ideato.it) Simone Gentili (sensorario@gmail.com) +--SKIPIF-- +<?php +if(!function_exists('proc_nice')) die("skip. proc_nice not available "); +?> --FILE-- <?php diff --git a/ext/standard/tests/general_functions/proc_nice_variation3.phpt b/ext/standard/tests/general_functions/proc_nice_variation3.phpt index 458126db4..46b444358 100644 --- a/ext/standard/tests/general_functions/proc_nice_variation3.phpt +++ b/ext/standard/tests/general_functions/proc_nice_variation3.phpt @@ -5,6 +5,10 @@ Italian PHP TestFest 2009 Cesena 19-20-21 june Fabio Fabbrucci (fabbrucci@grupporetina.com) Michele Orselli (mo@ideato.it) Simone Gentili (sensorario@gmail.com) +--SKIPIF-- +<?php +if(!function_exists('proc_nice')) die("skip. proc_nice not available "); +?> --FILE-- <?php diff --git a/ext/standard/tests/general_functions/proc_nice_variation5.phpt b/ext/standard/tests/general_functions/proc_nice_variation5.phpt index d8325106b..c22ca56ca 100644 --- a/ext/standard/tests/general_functions/proc_nice_variation5.phpt +++ b/ext/standard/tests/general_functions/proc_nice_variation5.phpt @@ -5,6 +5,11 @@ Italian PHP TestFest 2009 Cesena 19-20-21 june Fabio Fabbrucci (fabbrucci@grupporetina.com) Michele Orselli (mo@ideato.it) Simone Gentili (sensorario@gmail.com) +--SKIPIF-- +<?php + if(!function_exists('proc_nice')) die("skip. proc_nice not available "); + if(posix_geteuid() == 0) print "skip - Cannot run test as root."; +?> --FILE-- <?php diff --git a/ext/standard/tests/general_functions/proc_nice_variation6.phpt b/ext/standard/tests/general_functions/proc_nice_variation6.phpt index b4babd593..d52c0c079 100644 --- a/ext/standard/tests/general_functions/proc_nice_variation6.phpt +++ b/ext/standard/tests/general_functions/proc_nice_variation6.phpt @@ -5,6 +5,10 @@ Italian PHP TestFest 2009 Cesena 19-20-21 june Fabio Fabbrucci (fabbrucci@grupporetina.com) Michele Orselli (mo@ideato.it) Simone Gentili (sensorario@gmail.com) +--SKIPIF-- +<?php +if(!function_exists('proc_nice')) die("skip. proc_nice not available "); +?> --FILE-- <?php diff --git a/ext/standard/tests/general_functions/proc_nice_variation7.phpt b/ext/standard/tests/general_functions/proc_nice_variation7.phpt index 70487dd09..26dbab503 100644 --- a/ext/standard/tests/general_functions/proc_nice_variation7.phpt +++ b/ext/standard/tests/general_functions/proc_nice_variation7.phpt @@ -5,6 +5,10 @@ Italian PHP TestFest 2009 Cesena 19-20-21 june Fabio Fabbrucci (fabbrucci@grupporetina.com) Michele Orselli (mo@ideato.it) Simone Gentili (sensorario@gmail.com) +--SKIPIF-- +<?php +if(!function_exists('proc_nice')) die("skip. proc_nice not available "); +?> --FILE-- <?php diff --git a/ext/standard/tests/general_functions/putenv_error1.phpt b/ext/standard/tests/general_functions/putenv_error1.phpt index c5af05a93..c4b49f3f8 100644 --- a/ext/standard/tests/general_functions/putenv_error1.phpt +++ b/ext/standard/tests/general_functions/putenv_error1.phpt @@ -16,7 +16,7 @@ print ($set ? 'it worked' : 'boo') . "\n"; ?> ==DONE== --EXPECTF-- -PHP Warning: Directive 'safe_mode' is deprecated in PHP 5.3 and greater in Unknown on line 0 +Warning: Directive 'safe_mode' is deprecated in PHP 5.3 and greater in Unknown on line 0 Warning: putenv(): Safe Mode warning: Cannot set environment variable 'FOO' - it's not in the allowed list in %s on line %d diff --git a/ext/standard/tests/general_functions/putenv_error2.phpt b/ext/standard/tests/general_functions/putenv_error2.phpt index 365f0e544..456a7ab69 100644 --- a/ext/standard/tests/general_functions/putenv_error2.phpt +++ b/ext/standard/tests/general_functions/putenv_error2.phpt @@ -12,7 +12,7 @@ putenv('BAZ=bop'); ?> ==DONE== --EXPECTF-- -PHP Warning: Directive 'safe_mode' is deprecated in PHP 5.3 and greater in Unknown on line 0 +Warning: Directive 'safe_mode' is deprecated in PHP 5.3 and greater in Unknown on line 0 Warning: putenv(): Safe Mode warning: Cannot override protected environment variable 'FOO' in %s on line %d diff --git a/ext/standard/tests/general_functions/strval.phpt b/ext/standard/tests/general_functions/strval.phpt index 1789e41d6..350678578 100644 --- a/ext/standard/tests/general_functions/strval.phpt +++ b/ext/standard/tests/general_functions/strval.phpt @@ -267,10 +267,10 @@ string(4) "true" -- Iteration 54 -- string(4) "true" -- Iteration 55 -- -string(54) "This is a multiline heredoc +string(5%d) "This is a multiline heredoc string. Numeric = 1232455." -- Iteration 56 -- -string(10) "12345 +string(1%d) "12345 2345" -- Iteration 57 -- string(0) "" diff --git a/ext/standard/tests/general_functions/sunfuncts.phpt b/ext/standard/tests/general_functions/sunfuncts.phpt deleted file mode 100644 index 59acb122c..000000000 --- a/ext/standard/tests/general_functions/sunfuncts.phpt +++ /dev/null @@ -1,42 +0,0 @@ ---TEST-- -date_sunrise() and date_sunset() functions ---INI-- -precision=13 ---FILE-- -<?php -date_default_timezone_set('Asia/Jerusalem'); -for($a=1;$a<=12;$a++){ - echo date_sunrise(mktime(1,1,1,$a,1,2003),SUNFUNCS_RET_TIMESTAMP,31.76670,35.23330,90.83,2)." "; - echo date_sunrise(mktime(1,1,1,$a,1,2003),SUNFUNCS_RET_STRING,31.76670,35.23330,90.83,2)." "; - echo date_sunrise(mktime(1,1,1,$a,1,2003),SUNFUNCS_RET_DOUBLE,31.76670,35.23330,90.83,2)."\n"; - - echo date_sunset(mktime(1,1,1,$a,1,2003),SUNFUNCS_RET_TIMESTAMP,31.76670,35.23330,90.83,2)." "; - echo date_sunset(mktime(1,1,1,$a,1,2003),SUNFUNCS_RET_STRING,31.76670,35.23330,90.83,2)." "; - echo date_sunset(mktime(1,1,1,$a,1,2003),SUNFUNCS_RET_DOUBLE,31.76670,35.23330,90.83,2)."\n"; -} -?> ---EXPECTF-- -1041395864 06:37 6.6290131458%d -1041432452 16:47 16.792451114%d -1044073855 06:30 6.5154089279%d -1044112463 17:14 17.239870289%d -1046491495 06:04 6.0822145033%d -1046533075 17:37 17.632011035%d -1049167581 05:26 5.4394438111%d -1049212774 17:59 17.993035729%d -1051757532 04:52 4.8701934126%d -1051806007 18:20 18.335390508%d -1054434776 04:32 4.5489827182%d -1054485647 18:40 18.679812949%d -1057026949 04:35 4.5971956372%d -1057078197 18:49 18.832563396%d -1059706409 04:53 4.8916575089%d -1059755837 18:37 18.621440704%d -1062385999 05:13 5.2220951121%d -1062432291 18:04 18.080957168%d -1064979098 05:31 5.5273199215%d -1065021952 17:25 17.431339135%d -1067658845 05:54 5.9016292870%d -1067698274 16:51 16.853902453%d -1070252387 06:19 6.3299242689%d -1070289382 16:36 16.606312600%d diff --git a/ext/standard/tests/mail/mail_basic.phpt b/ext/standard/tests/mail/mail_basic.phpt index 77ff3512d..fecb50f32 100644 --- a/ext/standard/tests/mail/mail_basic.phpt +++ b/ext/standard/tests/mail/mail_basic.phpt @@ -2,6 +2,7 @@ Test mail() function : basic functionality --INI-- sendmail_path=tee mailBasic.out >/dev/null +mail.add_x_header = Off --SKIPIF-- <?php if(substr(PHP_OS, 0, 3) == "WIN") diff --git a/ext/standard/tests/mail/mail_basic2.phpt b/ext/standard/tests/mail/mail_basic2.phpt index 8f9ef6413..2ac4d20b1 100644 --- a/ext/standard/tests/mail/mail_basic2.phpt +++ b/ext/standard/tests/mail/mail_basic2.phpt @@ -6,7 +6,8 @@ if(substr(PHP_OS, 0, 3) == "WIN") die("skip Won't run on Windows"); ?> --INI-- -sendmail_path="echo --- > /tmp/php_test_mailBasic2.out" +sendmail_path="sed > /tmp/php_test_mailBasic2.out" +mail.add_x_header = Off --FILE-- <?php /* Prototype : int mail(string to, string subject, string message [, string additional_headers [, string additional_parameters]]) @@ -23,7 +24,7 @@ $to = 'user@company.com'; $subject = 'Test Subject'; $message = 'A Message'; $additional_headers = 'KHeaders'; -$additional_parameters = "Extras"; +$additional_parameters = "-e '5 a--- Extras'"; $outFile = "/tmp/php_test_mailBasic2.out"; @unlink($outFile); @@ -31,11 +32,6 @@ echo "-- extra parameters --\n"; // Calling mail() with all possible arguments var_dump( mail($to, $subject, $message, $additional_headers, $additional_parameters) ); -//This test is just using a shell command (see the INI setting). The sleep() -//is used because that can take a while. If you see the test failing sometimes try -//increasing the length of the sleep. - -sleep(5); echo file_get_contents($outFile); unlink($outFile); ?> @@ -44,5 +40,10 @@ unlink($outFile); *** Testing mail() : basic functionality *** -- extra parameters -- bool(true) +To: user@company.com +Subject: Test Subject +KHeaders + +A Message --- Extras ===DONE=== diff --git a/ext/standard/tests/mail/mail_variation2.phpt b/ext/standard/tests/mail/mail_variation2.phpt index 59ef1d902..d6eafd2e5 100644 --- a/ext/standard/tests/mail/mail_variation2.phpt +++ b/ext/standard/tests/mail/mail_variation2.phpt @@ -1,8 +1,9 @@ --TEST-- Test mail() function : variation force extra parameters --INI-- -sendmail_path="echo --- > /tmp/php_test_mailVariation2.out" -mail.force_extra_parameters="forced params" +sendmail_path="sed > /tmp/php_test_mailVariation2.out" +mail.force_extra_parameters="-e4a---forced-params" +mail.add_x_header = Off --SKIPIF-- <?php if(substr(PHP_OS, 0, 3) == "WIN") @@ -35,5 +36,9 @@ unlink($outFile); --EXPECT-- *** Testing mail() : basic functionality *** bool(true) ---- forced params +To: user@company.com +Subject: Test Subject + +A Message +---forced-params ===DONE=== diff --git a/ext/standard/tests/misc/syslog_vars_variation1.phpt b/ext/standard/tests/misc/syslog_vars_variation1.phpt index c5b998527..ae53a57bc 100644 --- a/ext/standard/tests/misc/syslog_vars_variation1.phpt +++ b/ext/standard/tests/misc/syslog_vars_variation1.phpt @@ -7,5 +7,5 @@ define_syslog_variables=On var_dump(isset($LOG_ERR)); ?> --EXPECTF-- -PHP Warning: Directive 'define_syslog_variables' is deprecated in PHP 5.3 and greater in Unknown on line 0 +Warning: Directive 'define_syslog_variables' is deprecated in PHP 5.3 and greater in Unknown on line 0 bool(true) diff --git a/ext/standard/tests/misc/time_sleep_until_error2.phpt b/ext/standard/tests/misc/time_sleep_until_error2.phpt index 311dd72f6..d20c8ab65 100644 --- a/ext/standard/tests/misc/time_sleep_until_error2.phpt +++ b/ext/standard/tests/misc/time_sleep_until_error2.phpt @@ -1,5 +1,9 @@ --TEST-- time_sleep_until() function - error test for time_sleep_until() +--SKIPIF-- +<?php + function_exists('time_sleep_until') or die('skip time_sleep_until() is not supported in this build.'); +?> --CREDITS-- Filippo De Santis fd@ideato.it #PHPTestFest Cesena Italia on 2009-06-20 diff --git a/ext/standard/tests/network/define_syslog_variables_variation-win32.phpt b/ext/standard/tests/network/define_syslog_variables_variation-win32.phpt deleted file mode 100644 index ac7dac8ab..000000000 --- a/ext/standard/tests/network/define_syslog_variables_variation-win32.phpt +++ /dev/null @@ -1,97 +0,0 @@ ---TEST-- -Test define_syslog_variables() function : variation ---INI-- -define_syslog_variables = true ---SKIPIF-- -<?php -if(substr(PHP_OS, 0, 3) != "WIN") - die("skip Only run on Windows"); -?> ---FILE-- -<?php -/* Prototype : void define_syslog_variables(void) - * Description: Initializes all syslog-related variables - * Source code: ext/standard/syslog.c - * Alias to functions: - */ - -echo "*** Testing define_syslog_variables() : variation ***\n"; - -$log_constants = array( - LOG_EMERG, - LOG_ALERT, - LOG_CRIT, - LOG_ERR, - LOG_WARNING, - LOG_NOTICE, - LOG_INFO, - LOG_DEBUG, - LOG_KERN, - LOG_USER, - LOG_MAIL, - LOG_DAEMON, - LOG_AUTH, - LOG_SYSLOG, - LOG_LPR, - LOG_NEWS, - LOG_UUCP, - LOG_CRON, - LOG_AUTHPRIV, - LOG_PID, - LOG_CONS, - LOG_ODELAY, - LOG_NDELAY, - LOG_NOWAIT, - LOG_PERROR, -); - - -$log_variables = array( - "LOG_EMERG", - "LOG_ALERT", - "LOG_CRIT", - "LOG_ERR", - "LOG_WARNING", - "LOG_NOTICE", - "LOG_INFO", - "LOG_DEBUG", - "LOG_KERN", - "LOG_USER", - "LOG_MAIL", - "LOG_DAEMON", - "LOG_AUTH", - "LOG_SYSLOG", - "LOG_LPR", - "LOG_NEWS", - "LOG_UUCP", - "LOG_CRON", - "LOG_AUTHPRIV", - "LOG_PID", - "LOG_CONS", - "LOG_ODELAY", - "LOG_NDELAY", - "LOG_NOWAIT", - "LOG_PERROR", -); - -error_reporting(E_ALL); -$failed = false; - -// show variables defined -for ($t = 0; $t < count($log_variables); $t++) { - if (isset($$log_variables[$t]) === false || $$log_variables[$t] != $log_constants[$t]) { - $failed = true; - echo "FAILED: $log_variables[$t] doesn't contain the correct value\n"; - } -} - -if ($failed == false) { - echo "PASSED\n"; -} -?> -===DONE=== ---EXPECT-- -*** Testing define_syslog_variables() : variation *** -PASSED -===DONE=== -PHP Warning: Directive 'define_syslog_variables' is deprecated in PHP 5.3 and greater in Unknown on line 0 diff --git a/ext/standard/tests/network/define_syslog_variables_variation.phpt b/ext/standard/tests/network/define_syslog_variables_variation.phpt index 1e35633bc..e5842b036 100644 --- a/ext/standard/tests/network/define_syslog_variables_variation.phpt +++ b/ext/standard/tests/network/define_syslog_variables_variation.phpt @@ -1,12 +1,5 @@ --TEST-- Test define_syslog_variables() function : variation ---SKIPIF-- -<?php -if(substr(PHP_OS, 0, 3) == "WIN") - die("skip don't run on Windows"); -?> ---INI-- -define_syslog_variables = true --FILE-- <?php /* Prototype : void define_syslog_variables(void) @@ -15,6 +8,8 @@ define_syslog_variables = true * Alias to functions: */ +define_syslog_variables(); + echo "*** Testing define_syslog_variables() : variation ***\n"; $log_constants = array( @@ -90,8 +85,8 @@ if ($failed == false) { } ?> ===DONE=== ---EXPECT-- -PHP Warning: Directive 'define_syslog_variables' is deprecated in PHP 5.3 and greater in Unknown on line 0 +--EXPECTF-- +Deprecated: Function define_syslog_variables() is deprecated in %s on line %d *** Testing define_syslog_variables() : variation *** PASSED ===DONE=== diff --git a/ext/standard/tests/php_ini_loaded_file.phpt b/ext/standard/tests/php_ini_loaded_file.phpt index ab26953ea..b443c5f70 100644 --- a/ext/standard/tests/php_ini_loaded_file.phpt +++ b/ext/standard/tests/php_ini_loaded_file.phpt @@ -8,6 +8,5 @@ Testfest 2009 Munich <?php var_dump(php_ini_loaded_file()); ?> ---EXPECT-- -bool(false) - +--EXPECTF-- +string(%d) "%s/tmp-php.ini" diff --git a/ext/standard/tests/streams/bug49936.phpt b/ext/standard/tests/streams/bug49936.phpt new file mode 100644 index 000000000..d77e161c5 --- /dev/null +++ b/ext/standard/tests/streams/bug49936.phpt @@ -0,0 +1,26 @@ +--TEST-- +Bug #49936 (crash with ftp stream in php_stream_context_get_option()) +--SKIPIF-- +<?php +if( substr(PHP_OS, 0, 3) == "WIN" ) + die("skip. Do not run on Windows"); +?> +--FILE-- +<?php + +$dir = 'ftp://your:self@localhost/'; + +var_dump(opendir($dir)); +var_dump(opendir($dir)); + +?> +--EXPECTF-- +Warning: opendir(): connect() failed: Connection refused in %s on line %d + +Warning: opendir(ftp://...@localhost/): failed to open dir: operation failed in %s on line %d +bool(false) + +Warning: opendir(): connect() failed: Connection refused in %s on line %d + +Warning: opendir(ftp://...@localhost/): failed to open dir: operation failed in %s on line %d +bool(false) diff --git a/ext/standard/tests/streams/bug49936_win32.phpt b/ext/standard/tests/streams/bug49936_win32.phpt new file mode 100644 index 000000000..4db4a5044 --- /dev/null +++ b/ext/standard/tests/streams/bug49936_win32.phpt @@ -0,0 +1,30 @@ +--TEST--
+Bug #49936 (crash with ftp stream in php_stream_context_get_option())
+--SKIPIF--
+<?php
+if( substr(PHP_OS, 0, 3) != "WIN" )
+ die("skip. Do run on Windows only");
+?>
+--INI--
+default_socket_timeout=2
+--FILE--
+<?php
+
+$dir = 'ftp://your:self@localhost/';
+
+var_dump(opendir($dir));
+var_dump(opendir($dir));
+
+?>
+--EXPECTF--
+Warning: opendir(): connect() failed: %s
+ in %s on line %d
+
+Warning: opendir(ftp://...@localhost/): failed to open dir: operation failed in %s on line %d
+bool(false)
+
+Warning: opendir(): connect() failed: %s
+ in %s on line %d
+
+Warning: opendir(ftp://...@localhost/): failed to open dir: operation failed in %s on line %d
+bool(false)
diff --git a/ext/standard/tests/streams/stream_resolve_include_path.phpt b/ext/standard/tests/streams/stream_resolve_include_path.phpt new file mode 100644 index 000000000..aea5cdd96 --- /dev/null +++ b/ext/standard/tests/streams/stream_resolve_include_path.phpt @@ -0,0 +1,37 @@ +--TEST-- +stream_resolve_include_path(string path) +--FILE-- +<?php +$include_path = __DIR__ . '/test_path'; +$include_path_nested = $include_path . '/nested'; + +$include_path_file = $include_path . DIRECTORY_SEPARATOR . 'file'; +$include_path_nested_file = $include_path_nested . DIRECTORY_SEPARATOR . 'file'; + +mkdir($include_path); +mkdir($include_path_nested); + +file_put_contents($include_path_file, 'include_path'); +file_put_contents($include_path_nested_file, 'include_path'); + +var_dump(stream_resolve_include_path()); + +set_include_path($include_path . PATH_SEPARATOR . $include_path_nested); +var_dump(stream_resolve_include_path('file-does-not-exist')); + +set_include_path($include_path . PATH_SEPARATOR . $include_path_nested); +var_dump(stream_resolve_include_path('file')); +set_include_path($include_path_nested . PATH_SEPARATOR . $include_path); +var_dump(stream_resolve_include_path('file')); + +unlink($include_path_nested_file); +rmdir($include_path_nested); +unlink($include_path_file); +rmdir($include_path); +--EXPECTF-- +Warning: stream_resolve_include_path() expects exactly 1 parameter, 0 given in %s on line %d +NULL +bool(false) +string(%d) "%stest_path%sfile" +string(%d) "%stest_path%snested%sfile" + diff --git a/ext/standard/tests/strings/bug49785.phpt b/ext/standard/tests/strings/bug49785.phpt new file mode 100644 index 000000000..fa42dacd6 --- /dev/null +++ b/ext/standard/tests/strings/bug49785.phpt @@ -0,0 +1,4124 @@ +--TEST-- +Bug #49785 (insufficient input string validation of htmlspecialchars()) +--FILE-- +<?php +function _bin2hex($val) { + return is_string($val) ? bin2hex($val): $val; +} + +// UTF-8: basic tests +var_dump(_bin2hex(htmlentities("\xc1\xbf", ENT_QUOTES, "UTF-8"))); +var_dump(_bin2hex(htmlentities("\xc2\x80", ENT_QUOTES, "UTF-8"))); +var_dump(_bin2hex(htmlentities("\xc2\x00", ENT_QUOTES, "UTF-8"))); +var_dump(_bin2hex(htmlentities("\xc2\xc0", ENT_QUOTES, "UTF-8"))); +var_dump(_bin2hex(htmlentities("\xce\x91", ENT_QUOTES, "UTF-8"))); +var_dump(_bin2hex(htmlentities("\xce\xb1", ENT_QUOTES, "UTF-8"))); +var_dump(_bin2hex(htmlentities("\xdf\xbf", ENT_QUOTES, "UTF-8"))); +var_dump(_bin2hex(htmlentities("\xe0\xa0\x80", ENT_QUOTES, "UTF-8"))); +var_dump(_bin2hex(htmlentities("\xe0\x9f\xbf", ENT_QUOTES, "UTF-8"))); +var_dump(_bin2hex(htmlentities("\xe0\x9f\xbf", ENT_QUOTES, "UTF-8"))); +var_dump(_bin2hex(htmlentities("\xe0\x1f\xbf", ENT_QUOTES, "UTF-8"))); +var_dump(_bin2hex(htmlentities("\xe0\x9f\x3f", ENT_QUOTES, "UTF-8"))); +var_dump(_bin2hex(htmlentities("\xe0\x1f\x3f", ENT_QUOTES, "UTF-8"))); +var_dump(_bin2hex(htmlentities("\xe2\x99\xa5", ENT_QUOTES, "UTF-8"))); +var_dump(_bin2hex(htmlentities("\xef\xbf\xbf", ENT_QUOTES, "UTF-8"))); +var_dump(_bin2hex(htmlentities("\xef\xff\xbf", ENT_QUOTES, "UTF-8"))); +var_dump(_bin2hex(htmlentities("\xef\xbf\xff", ENT_QUOTES, "UTF-8"))); +var_dump(_bin2hex(htmlentities("\xf0\x8f\xbf\xbf", ENT_QUOTES, "UTF-8"))); +var_dump(_bin2hex(htmlentities("\xf0\x90\x80\x80", ENT_QUOTES, "UTF-8"))); +var_dump(_bin2hex(htmlentities("\xf7\xbf\xbf\xbf", ENT_QUOTES, "UTF-8"))); +var_dump(_bin2hex(htmlentities("\xf7\x3f\xbf\xbf", ENT_QUOTES, "UTF-8"))); +var_dump(_bin2hex(htmlentities("\xf7\xbf\x3f\xbf", ENT_QUOTES, "UTF-8"))); +var_dump(_bin2hex(htmlentities("\xf7\xbf\xbf\x3f", ENT_QUOTES, "UTF-8"))); +var_dump(_bin2hex(htmlentities("\xf7\xff\xbf\xbf", ENT_QUOTES, "UTF-8"))); +var_dump(_bin2hex(htmlentities("\xf7\xbf\xff\xbf", ENT_QUOTES, "UTF-8"))); +var_dump(_bin2hex(htmlentities("\xf7\xbf\xbf\xff", ENT_QUOTES, "UTF-8"))); +var_dump(_bin2hex(htmlentities("\xf8\x88\x80\x80\x80", ENT_QUOTES, "UTF-8"))); + +echo "--\n"; +// UTF-8: with ENT_IGNORE +var_dump(_bin2hex(htmlentities("\xc0\xa0\xc2\x80", ENT_QUOTES | ENT_IGNORE, "UTF-8"))); +var_dump(_bin2hex(htmlentities("\xe0\x80\x80\xe0\xa0\x80", ENT_QUOTES | ENT_IGNORE, "UTF-8"))); +var_dump(_bin2hex(htmlentities("\xf0\x80\x80\x80\xf0\x90\x80\x80", ENT_QUOTES | ENT_IGNORE, "UTF-8"))); + +echo "--\n"; +// UTF-8: alternative (invalid) UTF-8 sequence / surrogate pairs +var_dump(_bin2hex(htmlspecialchars("\xc0\xa6", ENT_QUOTES, 'UTF-8'))); +var_dump(_bin2hex(htmlspecialchars("\xe0\x80\xa6", ENT_QUOTES, 'UTF-8'))); +var_dump(_bin2hex(htmlspecialchars("\xf0\x80\x80\xa6", ENT_QUOTES, 'UTF-8'))); +var_dump(_bin2hex(htmlspecialchars("\xec\xbf\xbf", ENT_QUOTES, 'UTF-8'))); +var_dump(_bin2hex(htmlspecialchars("\xed\xa0\x80", ENT_QUOTES, 'UTF-8'))); +var_dump(_bin2hex(htmlspecialchars("\xed\xbf\xbf", ENT_QUOTES, 'UTF-8'))); +var_dump(_bin2hex(htmlspecialchars("\xee\x80\x80", ENT_QUOTES, 'UTF-8'))); + +// Shift_JIS: non-lead byte >= 0x80 +var_dump(_bin2hex(htmlspecialchars("\x80", ENT_QUOTES, 'Shift_JIS'))); +foreach (array_map('chr', range(0xa0, 0xdf)) as $c) { + var_dump(_bin2hex(htmlspecialchars($c, ENT_QUOTES, 'Shift_JIS'))); +} +var_dump(_bin2hex(htmlspecialchars("\xfd", ENT_QUOTES, 'Shift_JIS'))); +var_dump(_bin2hex(htmlspecialchars("\xfe", ENT_QUOTES, 'Shift_JIS'))); +var_dump(_bin2hex(htmlspecialchars("\xff", ENT_QUOTES, 'Shift_JIS'))); + +echo "--\n"; +// Shift_JIS: incomplete / invalid multibyte sequences +foreach (array_map('chr', array_merge(range(0x81, 0x9f), range(0xe0, 0xfc))) as $c) { + var_dump(_bin2hex(htmlspecialchars("$c", ENT_QUOTES, 'Shift_JIS'))); + var_dump(_bin2hex(htmlspecialchars("$c\x3f", ENT_QUOTES, 'Shift_JIS'))); + var_dump(_bin2hex(htmlspecialchars("$c\x40", ENT_QUOTES, 'Shift_JIS'))); + var_dump(_bin2hex(htmlspecialchars("$c\x7e", ENT_QUOTES, 'Shift_JIS'))); + var_dump(_bin2hex(htmlspecialchars("$c\x7f", ENT_QUOTES, 'Shift_JIS'))); + var_dump(_bin2hex(htmlspecialchars("$c\x80", ENT_QUOTES, 'Shift_JIS'))); + var_dump(_bin2hex(htmlspecialchars("$c\xfc", ENT_QUOTES, 'Shift_JIS'))); + var_dump(_bin2hex(htmlspecialchars("$c\xfd", ENT_QUOTES, 'Shift_JIS'))); + var_dump(_bin2hex(htmlspecialchars("$c\xfe", ENT_QUOTES, 'Shift_JIS'))); + var_dump(_bin2hex(htmlspecialchars("$c\xff", ENT_QUOTES, 'Shift_JIS'))); +} + +echo "--\n"; +// EUC-JP: non-lead byte >= 0x80 +foreach (array_map('chr', array_merge(range(0x80, 0x8d), range(0x90, 0x9f))) as $c) { + var_dump(_bin2hex(htmlspecialchars($c, ENT_QUOTES, 'EUC-JP'))); +} +var_dump(_bin2hex(htmlspecialchars("\xff", ENT_QUOTES, 'EUC-JP'))); + +// EUC-JP: control codes that are virtually lead bytes +var_dump(_bin2hex(htmlspecialchars("\x8e", ENT_QUOTES, 'EUC-JP'))); +var_dump(_bin2hex(htmlspecialchars("\x8f", ENT_QUOTES, 'EUC-JP'))); +var_dump(_bin2hex(htmlspecialchars("\x8e\xa1", ENT_QUOTES, 'EUC-JP'))); +var_dump(_bin2hex(htmlspecialchars("\x8f\xa1", ENT_QUOTES, 'EUC-JP'))); +var_dump(_bin2hex(htmlspecialchars("\x8e\xa1\xa3", ENT_QUOTES, 'EUC-JP'))); +var_dump(_bin2hex(htmlspecialchars("\x8f\xa1\xa3", ENT_QUOTES, 'EUC-JP'))); + +echo "--\n"; +// EUC-JP: incomplete / invalid multibyte sequences +foreach (array_map('chr', array_merge(range(0xa1, 0xfe))) as $c) { + var_dump(_bin2hex(htmlspecialchars("$c", ENT_QUOTES, 'EUC-JP'))); + var_dump(_bin2hex(htmlspecialchars("$c\x26", ENT_QUOTES, 'EUC-JP'))); + var_dump(_bin2hex(htmlspecialchars("$c\x80", ENT_QUOTES, 'EUC-JP'))); + var_dump(_bin2hex(htmlspecialchars("$c\xa0", ENT_QUOTES, 'EUC-JP'))); + var_dump(_bin2hex(htmlspecialchars("$c\xa1", ENT_QUOTES, 'EUC-JP'))); + var_dump(_bin2hex(htmlspecialchars("$c\xfe", ENT_QUOTES, 'EUC-JP'))); + var_dump(_bin2hex(htmlspecialchars("$c\xff", ENT_QUOTES, 'EUC-JP'))); + var_dump(_bin2hex(htmlspecialchars("\x8e$c", ENT_QUOTES, 'EUC-JP'))); + var_dump(_bin2hex(htmlspecialchars("\x8e$c\x26", ENT_QUOTES, 'EUC-JP'))); + var_dump(_bin2hex(htmlspecialchars("\x8e$c\x80", ENT_QUOTES, 'EUC-JP'))); + var_dump(_bin2hex(htmlspecialchars("\x8e$c\xa0", ENT_QUOTES, 'EUC-JP'))); + var_dump(_bin2hex(htmlspecialchars("\x8e$c\xa1", ENT_QUOTES, 'EUC-JP'))); + var_dump(_bin2hex(htmlspecialchars("\x8e$c\xfe", ENT_QUOTES, 'EUC-JP'))); + var_dump(_bin2hex(htmlspecialchars("\x8e$c\xff", ENT_QUOTES, 'EUC-JP'))); + var_dump(_bin2hex(htmlspecialchars("\x8f$c", ENT_QUOTES, 'EUC-JP'))); + var_dump(_bin2hex(htmlspecialchars("\x8f$c\x26", ENT_QUOTES, 'EUC-JP'))); + var_dump(_bin2hex(htmlspecialchars("\x8f$c\x80", ENT_QUOTES, 'EUC-JP'))); + var_dump(_bin2hex(htmlspecialchars("\x8f$c\xa0", ENT_QUOTES, 'EUC-JP'))); + var_dump(_bin2hex(htmlspecialchars("\x8f$c\xa1", ENT_QUOTES, 'EUC-JP'))); + var_dump(_bin2hex(htmlspecialchars("\x8f$c\xfe", ENT_QUOTES, 'EUC-JP'))); + var_dump(_bin2hex(htmlspecialchars("\x8f$c\xff", ENT_QUOTES, 'EUC-JP'))); +} + +echo "--\n"; +// BIG5: non-lead byte >= 0x80 +var_dump(_bin2hex(htmlspecialchars("\x80", ENT_QUOTES, 'BIG5'))); +var_dump(_bin2hex(htmlspecialchars("\xff", ENT_QUOTES, 'BIG5'))); + +echo "--\n"; +// BIG5: incomplete / invalid multibyte sequences +foreach (array_map('chr', range(0x81, 0xfe)) as $c) { + var_dump(_bin2hex(htmlspecialchars("$c", ENT_QUOTES, 'BIG5'))); + var_dump(_bin2hex(htmlspecialchars("$c\x3f", ENT_QUOTES, 'BIG5'))); + var_dump(_bin2hex(htmlspecialchars("$c\x40", ENT_QUOTES, 'BIG5'))); + var_dump(_bin2hex(htmlspecialchars("$c\x7e", ENT_QUOTES, 'BIG5'))); + var_dump(_bin2hex(htmlspecialchars("$c\x7f", ENT_QUOTES, 'BIG5'))); + var_dump(_bin2hex(htmlspecialchars("$c\x80", ENT_QUOTES, 'BIG5'))); + var_dump(_bin2hex(htmlspecialchars("$c\xa0", ENT_QUOTES, 'BIG5'))); + var_dump(_bin2hex(htmlspecialchars("$c\xa1", ENT_QUOTES, 'BIG5'))); + var_dump(_bin2hex(htmlspecialchars("$c\xfe", ENT_QUOTES, 'BIG5'))); + var_dump(_bin2hex(htmlspecialchars("$c\xff", ENT_QUOTES, 'BIG5'))); +} +?> +--EXPECT-- +string(0) "" +string(4) "c280" +string(0) "" +string(0) "" +string(14) "26416c7068613b" +string(14) "26616c7068613b" +string(4) "dfbf" +string(6) "e0a080" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(16) "266865617274733b" +string(6) "efbfbf" +string(0) "" +string(0) "" +string(0) "" +string(8) "f0908080" +string(8) "f7bfbfbf" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +-- +string(4) "c280" +string(6) "e0a080" +string(8) "f0908080" +-- +string(0) "" +string(0) "" +string(0) "" +string(6) "ecbfbf" +string(0) "" +string(0) "" +string(6) "ee8080" +string(2) "80" +string(2) "a0" +string(2) "a1" +string(2) "a2" +string(2) "a3" +string(2) "a4" +string(2) "a5" +string(2) "a6" +string(2) "a7" +string(2) "a8" +string(2) "a9" +string(2) "aa" +string(2) "ab" +string(2) "ac" +string(2) "ad" +string(2) "ae" +string(2) "af" +string(2) "b0" +string(2) "b1" +string(2) "b2" +string(2) "b3" +string(2) "b4" +string(2) "b5" +string(2) "b6" +string(2) "b7" +string(2) "b8" +string(2) "b9" +string(2) "ba" +string(2) "bb" +string(2) "bc" +string(2) "bd" +string(2) "be" +string(2) "bf" +string(2) "c0" +string(2) "c1" +string(2) "c2" +string(2) "c3" +string(2) "c4" +string(2) "c5" +string(2) "c6" +string(2) "c7" +string(2) "c8" +string(2) "c9" +string(2) "ca" +string(2) "cb" +string(2) "cc" +string(2) "cd" +string(2) "ce" +string(2) "cf" +string(2) "d0" +string(2) "d1" +string(2) "d2" +string(2) "d3" +string(2) "d4" +string(2) "d5" +string(2) "d6" +string(2) "d7" +string(2) "d8" +string(2) "d9" +string(2) "da" +string(2) "db" +string(2) "dc" +string(2) "dd" +string(2) "de" +string(2) "df" +string(2) "fd" +string(2) "fe" +string(2) "ff" +-- +string(0) "" +string(0) "" +string(4) "8140" +string(4) "817e" +string(0) "" +string(4) "8180" +string(4) "81fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "8240" +string(4) "827e" +string(0) "" +string(4) "8280" +string(4) "82fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "8340" +string(4) "837e" +string(0) "" +string(4) "8380" +string(4) "83fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "8440" +string(4) "847e" +string(0) "" +string(4) "8480" +string(4) "84fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "8540" +string(4) "857e" +string(0) "" +string(4) "8580" +string(4) "85fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "8640" +string(4) "867e" +string(0) "" +string(4) "8680" +string(4) "86fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "8740" +string(4) "877e" +string(0) "" +string(4) "8780" +string(4) "87fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "8840" +string(4) "887e" +string(0) "" +string(4) "8880" +string(4) "88fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "8940" +string(4) "897e" +string(0) "" +string(4) "8980" +string(4) "89fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "8a40" +string(4) "8a7e" +string(0) "" +string(4) "8a80" +string(4) "8afc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "8b40" +string(4) "8b7e" +string(0) "" +string(4) "8b80" +string(4) "8bfc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "8c40" +string(4) "8c7e" +string(0) "" +string(4) "8c80" +string(4) "8cfc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "8d40" +string(4) "8d7e" +string(0) "" +string(4) "8d80" +string(4) "8dfc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "8e40" +string(4) "8e7e" +string(0) "" +string(4) "8e80" +string(4) "8efc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "8f40" +string(4) "8f7e" +string(0) "" +string(4) "8f80" +string(4) "8ffc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "9040" +string(4) "907e" +string(0) "" +string(4) "9080" +string(4) "90fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "9140" +string(4) "917e" +string(0) "" +string(4) "9180" +string(4) "91fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "9240" +string(4) "927e" +string(0) "" +string(4) "9280" +string(4) "92fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "9340" +string(4) "937e" +string(0) "" +string(4) "9380" +string(4) "93fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "9440" +string(4) "947e" +string(0) "" +string(4) "9480" +string(4) "94fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "9540" +string(4) "957e" +string(0) "" +string(4) "9580" +string(4) "95fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "9640" +string(4) "967e" +string(0) "" +string(4) "9680" +string(4) "96fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "9740" +string(4) "977e" +string(0) "" +string(4) "9780" +string(4) "97fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "9840" +string(4) "987e" +string(0) "" +string(4) "9880" +string(4) "98fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "9940" +string(4) "997e" +string(0) "" +string(4) "9980" +string(4) "99fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "9a40" +string(4) "9a7e" +string(0) "" +string(4) "9a80" +string(4) "9afc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "9b40" +string(4) "9b7e" +string(0) "" +string(4) "9b80" +string(4) "9bfc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "9c40" +string(4) "9c7e" +string(0) "" +string(4) "9c80" +string(4) "9cfc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "9d40" +string(4) "9d7e" +string(0) "" +string(4) "9d80" +string(4) "9dfc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "9e40" +string(4) "9e7e" +string(0) "" +string(4) "9e80" +string(4) "9efc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "9f40" +string(4) "9f7e" +string(0) "" +string(4) "9f80" +string(4) "9ffc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "e040" +string(4) "e07e" +string(0) "" +string(4) "e080" +string(4) "e0fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "e140" +string(4) "e17e" +string(0) "" +string(4) "e180" +string(4) "e1fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "e240" +string(4) "e27e" +string(0) "" +string(4) "e280" +string(4) "e2fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "e340" +string(4) "e37e" +string(0) "" +string(4) "e380" +string(4) "e3fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "e440" +string(4) "e47e" +string(0) "" +string(4) "e480" +string(4) "e4fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "e540" +string(4) "e57e" +string(0) "" +string(4) "e580" +string(4) "e5fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "e640" +string(4) "e67e" +string(0) "" +string(4) "e680" +string(4) "e6fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "e740" +string(4) "e77e" +string(0) "" +string(4) "e780" +string(4) "e7fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "e840" +string(4) "e87e" +string(0) "" +string(4) "e880" +string(4) "e8fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "e940" +string(4) "e97e" +string(0) "" +string(4) "e980" +string(4) "e9fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "ea40" +string(4) "ea7e" +string(0) "" +string(4) "ea80" +string(4) "eafc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "eb40" +string(4) "eb7e" +string(0) "" +string(4) "eb80" +string(4) "ebfc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "ec40" +string(4) "ec7e" +string(0) "" +string(4) "ec80" +string(4) "ecfc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "ed40" +string(4) "ed7e" +string(0) "" +string(4) "ed80" +string(4) "edfc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "ee40" +string(4) "ee7e" +string(0) "" +string(4) "ee80" +string(4) "eefc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "ef40" +string(4) "ef7e" +string(0) "" +string(4) "ef80" +string(4) "effc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "f040" +string(4) "f07e" +string(0) "" +string(4) "f080" +string(4) "f0fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "f140" +string(4) "f17e" +string(0) "" +string(4) "f180" +string(4) "f1fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "f240" +string(4) "f27e" +string(0) "" +string(4) "f280" +string(4) "f2fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "f340" +string(4) "f37e" +string(0) "" +string(4) "f380" +string(4) "f3fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "f440" +string(4) "f47e" +string(0) "" +string(4) "f480" +string(4) "f4fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "f540" +string(4) "f57e" +string(0) "" +string(4) "f580" +string(4) "f5fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "f640" +string(4) "f67e" +string(0) "" +string(4) "f680" +string(4) "f6fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "f740" +string(4) "f77e" +string(0) "" +string(4) "f780" +string(4) "f7fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "f840" +string(4) "f87e" +string(0) "" +string(4) "f880" +string(4) "f8fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "f940" +string(4) "f97e" +string(0) "" +string(4) "f980" +string(4) "f9fc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "fa40" +string(4) "fa7e" +string(0) "" +string(4) "fa80" +string(4) "fafc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "fb40" +string(4) "fb7e" +string(0) "" +string(4) "fb80" +string(4) "fbfc" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "fc40" +string(4) "fc7e" +string(0) "" +string(4) "fc80" +string(4) "fcfc" +string(0) "" +string(0) "" +string(0) "" +-- +string(2) "80" +string(2) "81" +string(2) "82" +string(2) "83" +string(2) "84" +string(2) "85" +string(2) "86" +string(2) "87" +string(2) "88" +string(2) "89" +string(2) "8a" +string(2) "8b" +string(2) "8c" +string(2) "8d" +string(2) "90" +string(2) "91" +string(2) "92" +string(2) "93" +string(2) "94" +string(2) "95" +string(2) "96" +string(2) "97" +string(2) "98" +string(2) "99" +string(2) "9a" +string(2) "9b" +string(2) "9c" +string(2) "9d" +string(2) "9e" +string(2) "9f" +string(2) "ff" +string(0) "" +string(0) "" +string(4) "8ea1" +string(0) "" +string(0) "" +string(6) "8fa1a3" +-- +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "a1a1" +string(4) "a1fe" +string(0) "" +string(4) "8ea1" +string(14) "8ea126616d703b" +string(6) "8ea180" +string(6) "8ea1a0" +string(0) "" +string(0) "" +string(6) "8ea1ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fa1a1" +string(6) "8fa1fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "a2a1" +string(4) "a2fe" +string(0) "" +string(4) "8ea2" +string(14) "8ea226616d703b" +string(6) "8ea280" +string(6) "8ea2a0" +string(0) "" +string(0) "" +string(6) "8ea2ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fa2a1" +string(6) "8fa2fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "a3a1" +string(4) "a3fe" +string(0) "" +string(4) "8ea3" +string(14) "8ea326616d703b" +string(6) "8ea380" +string(6) "8ea3a0" +string(0) "" +string(0) "" +string(6) "8ea3ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fa3a1" +string(6) "8fa3fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "a4a1" +string(4) "a4fe" +string(0) "" +string(4) "8ea4" +string(14) "8ea426616d703b" +string(6) "8ea480" +string(6) "8ea4a0" +string(0) "" +string(0) "" +string(6) "8ea4ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fa4a1" +string(6) "8fa4fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "a5a1" +string(4) "a5fe" +string(0) "" +string(4) "8ea5" +string(14) "8ea526616d703b" +string(6) "8ea580" +string(6) "8ea5a0" +string(0) "" +string(0) "" +string(6) "8ea5ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fa5a1" +string(6) "8fa5fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "a6a1" +string(4) "a6fe" +string(0) "" +string(4) "8ea6" +string(14) "8ea626616d703b" +string(6) "8ea680" +string(6) "8ea6a0" +string(0) "" +string(0) "" +string(6) "8ea6ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fa6a1" +string(6) "8fa6fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "a7a1" +string(4) "a7fe" +string(0) "" +string(4) "8ea7" +string(14) "8ea726616d703b" +string(6) "8ea780" +string(6) "8ea7a0" +string(0) "" +string(0) "" +string(6) "8ea7ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fa7a1" +string(6) "8fa7fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "a8a1" +string(4) "a8fe" +string(0) "" +string(4) "8ea8" +string(14) "8ea826616d703b" +string(6) "8ea880" +string(6) "8ea8a0" +string(0) "" +string(0) "" +string(6) "8ea8ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fa8a1" +string(6) "8fa8fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "a9a1" +string(4) "a9fe" +string(0) "" +string(4) "8ea9" +string(14) "8ea926616d703b" +string(6) "8ea980" +string(6) "8ea9a0" +string(0) "" +string(0) "" +string(6) "8ea9ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fa9a1" +string(6) "8fa9fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "aaa1" +string(4) "aafe" +string(0) "" +string(4) "8eaa" +string(14) "8eaa26616d703b" +string(6) "8eaa80" +string(6) "8eaaa0" +string(0) "" +string(0) "" +string(6) "8eaaff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8faaa1" +string(6) "8faafe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "aba1" +string(4) "abfe" +string(0) "" +string(4) "8eab" +string(14) "8eab26616d703b" +string(6) "8eab80" +string(6) "8eaba0" +string(0) "" +string(0) "" +string(6) "8eabff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8faba1" +string(6) "8fabfe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "aca1" +string(4) "acfe" +string(0) "" +string(4) "8eac" +string(14) "8eac26616d703b" +string(6) "8eac80" +string(6) "8eaca0" +string(0) "" +string(0) "" +string(6) "8eacff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8faca1" +string(6) "8facfe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "ada1" +string(4) "adfe" +string(0) "" +string(4) "8ead" +string(14) "8ead26616d703b" +string(6) "8ead80" +string(6) "8eada0" +string(0) "" +string(0) "" +string(6) "8eadff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fada1" +string(6) "8fadfe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "aea1" +string(4) "aefe" +string(0) "" +string(4) "8eae" +string(14) "8eae26616d703b" +string(6) "8eae80" +string(6) "8eaea0" +string(0) "" +string(0) "" +string(6) "8eaeff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8faea1" +string(6) "8faefe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "afa1" +string(4) "affe" +string(0) "" +string(4) "8eaf" +string(14) "8eaf26616d703b" +string(6) "8eaf80" +string(6) "8eafa0" +string(0) "" +string(0) "" +string(6) "8eafff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fafa1" +string(6) "8faffe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "b0a1" +string(4) "b0fe" +string(0) "" +string(4) "8eb0" +string(14) "8eb026616d703b" +string(6) "8eb080" +string(6) "8eb0a0" +string(0) "" +string(0) "" +string(6) "8eb0ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fb0a1" +string(6) "8fb0fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "b1a1" +string(4) "b1fe" +string(0) "" +string(4) "8eb1" +string(14) "8eb126616d703b" +string(6) "8eb180" +string(6) "8eb1a0" +string(0) "" +string(0) "" +string(6) "8eb1ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fb1a1" +string(6) "8fb1fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "b2a1" +string(4) "b2fe" +string(0) "" +string(4) "8eb2" +string(14) "8eb226616d703b" +string(6) "8eb280" +string(6) "8eb2a0" +string(0) "" +string(0) "" +string(6) "8eb2ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fb2a1" +string(6) "8fb2fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "b3a1" +string(4) "b3fe" +string(0) "" +string(4) "8eb3" +string(14) "8eb326616d703b" +string(6) "8eb380" +string(6) "8eb3a0" +string(0) "" +string(0) "" +string(6) "8eb3ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fb3a1" +string(6) "8fb3fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "b4a1" +string(4) "b4fe" +string(0) "" +string(4) "8eb4" +string(14) "8eb426616d703b" +string(6) "8eb480" +string(6) "8eb4a0" +string(0) "" +string(0) "" +string(6) "8eb4ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fb4a1" +string(6) "8fb4fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "b5a1" +string(4) "b5fe" +string(0) "" +string(4) "8eb5" +string(14) "8eb526616d703b" +string(6) "8eb580" +string(6) "8eb5a0" +string(0) "" +string(0) "" +string(6) "8eb5ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fb5a1" +string(6) "8fb5fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "b6a1" +string(4) "b6fe" +string(0) "" +string(4) "8eb6" +string(14) "8eb626616d703b" +string(6) "8eb680" +string(6) "8eb6a0" +string(0) "" +string(0) "" +string(6) "8eb6ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fb6a1" +string(6) "8fb6fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "b7a1" +string(4) "b7fe" +string(0) "" +string(4) "8eb7" +string(14) "8eb726616d703b" +string(6) "8eb780" +string(6) "8eb7a0" +string(0) "" +string(0) "" +string(6) "8eb7ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fb7a1" +string(6) "8fb7fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "b8a1" +string(4) "b8fe" +string(0) "" +string(4) "8eb8" +string(14) "8eb826616d703b" +string(6) "8eb880" +string(6) "8eb8a0" +string(0) "" +string(0) "" +string(6) "8eb8ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fb8a1" +string(6) "8fb8fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "b9a1" +string(4) "b9fe" +string(0) "" +string(4) "8eb9" +string(14) "8eb926616d703b" +string(6) "8eb980" +string(6) "8eb9a0" +string(0) "" +string(0) "" +string(6) "8eb9ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fb9a1" +string(6) "8fb9fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "baa1" +string(4) "bafe" +string(0) "" +string(4) "8eba" +string(14) "8eba26616d703b" +string(6) "8eba80" +string(6) "8ebaa0" +string(0) "" +string(0) "" +string(6) "8ebaff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fbaa1" +string(6) "8fbafe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "bba1" +string(4) "bbfe" +string(0) "" +string(4) "8ebb" +string(14) "8ebb26616d703b" +string(6) "8ebb80" +string(6) "8ebba0" +string(0) "" +string(0) "" +string(6) "8ebbff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fbba1" +string(6) "8fbbfe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "bca1" +string(4) "bcfe" +string(0) "" +string(4) "8ebc" +string(14) "8ebc26616d703b" +string(6) "8ebc80" +string(6) "8ebca0" +string(0) "" +string(0) "" +string(6) "8ebcff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fbca1" +string(6) "8fbcfe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "bda1" +string(4) "bdfe" +string(0) "" +string(4) "8ebd" +string(14) "8ebd26616d703b" +string(6) "8ebd80" +string(6) "8ebda0" +string(0) "" +string(0) "" +string(6) "8ebdff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fbda1" +string(6) "8fbdfe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "bea1" +string(4) "befe" +string(0) "" +string(4) "8ebe" +string(14) "8ebe26616d703b" +string(6) "8ebe80" +string(6) "8ebea0" +string(0) "" +string(0) "" +string(6) "8ebeff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fbea1" +string(6) "8fbefe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "bfa1" +string(4) "bffe" +string(0) "" +string(4) "8ebf" +string(14) "8ebf26616d703b" +string(6) "8ebf80" +string(6) "8ebfa0" +string(0) "" +string(0) "" +string(6) "8ebfff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fbfa1" +string(6) "8fbffe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "c0a1" +string(4) "c0fe" +string(0) "" +string(4) "8ec0" +string(14) "8ec026616d703b" +string(6) "8ec080" +string(6) "8ec0a0" +string(0) "" +string(0) "" +string(6) "8ec0ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fc0a1" +string(6) "8fc0fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "c1a1" +string(4) "c1fe" +string(0) "" +string(4) "8ec1" +string(14) "8ec126616d703b" +string(6) "8ec180" +string(6) "8ec1a0" +string(0) "" +string(0) "" +string(6) "8ec1ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fc1a1" +string(6) "8fc1fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "c2a1" +string(4) "c2fe" +string(0) "" +string(4) "8ec2" +string(14) "8ec226616d703b" +string(6) "8ec280" +string(6) "8ec2a0" +string(0) "" +string(0) "" +string(6) "8ec2ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fc2a1" +string(6) "8fc2fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "c3a1" +string(4) "c3fe" +string(0) "" +string(4) "8ec3" +string(14) "8ec326616d703b" +string(6) "8ec380" +string(6) "8ec3a0" +string(0) "" +string(0) "" +string(6) "8ec3ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fc3a1" +string(6) "8fc3fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "c4a1" +string(4) "c4fe" +string(0) "" +string(4) "8ec4" +string(14) "8ec426616d703b" +string(6) "8ec480" +string(6) "8ec4a0" +string(0) "" +string(0) "" +string(6) "8ec4ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fc4a1" +string(6) "8fc4fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "c5a1" +string(4) "c5fe" +string(0) "" +string(4) "8ec5" +string(14) "8ec526616d703b" +string(6) "8ec580" +string(6) "8ec5a0" +string(0) "" +string(0) "" +string(6) "8ec5ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fc5a1" +string(6) "8fc5fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "c6a1" +string(4) "c6fe" +string(0) "" +string(4) "8ec6" +string(14) "8ec626616d703b" +string(6) "8ec680" +string(6) "8ec6a0" +string(0) "" +string(0) "" +string(6) "8ec6ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fc6a1" +string(6) "8fc6fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "c7a1" +string(4) "c7fe" +string(0) "" +string(4) "8ec7" +string(14) "8ec726616d703b" +string(6) "8ec780" +string(6) "8ec7a0" +string(0) "" +string(0) "" +string(6) "8ec7ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fc7a1" +string(6) "8fc7fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "c8a1" +string(4) "c8fe" +string(0) "" +string(4) "8ec8" +string(14) "8ec826616d703b" +string(6) "8ec880" +string(6) "8ec8a0" +string(0) "" +string(0) "" +string(6) "8ec8ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fc8a1" +string(6) "8fc8fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "c9a1" +string(4) "c9fe" +string(0) "" +string(4) "8ec9" +string(14) "8ec926616d703b" +string(6) "8ec980" +string(6) "8ec9a0" +string(0) "" +string(0) "" +string(6) "8ec9ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fc9a1" +string(6) "8fc9fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "caa1" +string(4) "cafe" +string(0) "" +string(4) "8eca" +string(14) "8eca26616d703b" +string(6) "8eca80" +string(6) "8ecaa0" +string(0) "" +string(0) "" +string(6) "8ecaff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fcaa1" +string(6) "8fcafe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "cba1" +string(4) "cbfe" +string(0) "" +string(4) "8ecb" +string(14) "8ecb26616d703b" +string(6) "8ecb80" +string(6) "8ecba0" +string(0) "" +string(0) "" +string(6) "8ecbff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fcba1" +string(6) "8fcbfe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "cca1" +string(4) "ccfe" +string(0) "" +string(4) "8ecc" +string(14) "8ecc26616d703b" +string(6) "8ecc80" +string(6) "8ecca0" +string(0) "" +string(0) "" +string(6) "8eccff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fcca1" +string(6) "8fccfe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "cda1" +string(4) "cdfe" +string(0) "" +string(4) "8ecd" +string(14) "8ecd26616d703b" +string(6) "8ecd80" +string(6) "8ecda0" +string(0) "" +string(0) "" +string(6) "8ecdff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fcda1" +string(6) "8fcdfe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "cea1" +string(4) "cefe" +string(0) "" +string(4) "8ece" +string(14) "8ece26616d703b" +string(6) "8ece80" +string(6) "8ecea0" +string(0) "" +string(0) "" +string(6) "8eceff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fcea1" +string(6) "8fcefe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "cfa1" +string(4) "cffe" +string(0) "" +string(4) "8ecf" +string(14) "8ecf26616d703b" +string(6) "8ecf80" +string(6) "8ecfa0" +string(0) "" +string(0) "" +string(6) "8ecfff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fcfa1" +string(6) "8fcffe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "d0a1" +string(4) "d0fe" +string(0) "" +string(4) "8ed0" +string(14) "8ed026616d703b" +string(6) "8ed080" +string(6) "8ed0a0" +string(0) "" +string(0) "" +string(6) "8ed0ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fd0a1" +string(6) "8fd0fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "d1a1" +string(4) "d1fe" +string(0) "" +string(4) "8ed1" +string(14) "8ed126616d703b" +string(6) "8ed180" +string(6) "8ed1a0" +string(0) "" +string(0) "" +string(6) "8ed1ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fd1a1" +string(6) "8fd1fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "d2a1" +string(4) "d2fe" +string(0) "" +string(4) "8ed2" +string(14) "8ed226616d703b" +string(6) "8ed280" +string(6) "8ed2a0" +string(0) "" +string(0) "" +string(6) "8ed2ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fd2a1" +string(6) "8fd2fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "d3a1" +string(4) "d3fe" +string(0) "" +string(4) "8ed3" +string(14) "8ed326616d703b" +string(6) "8ed380" +string(6) "8ed3a0" +string(0) "" +string(0) "" +string(6) "8ed3ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fd3a1" +string(6) "8fd3fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "d4a1" +string(4) "d4fe" +string(0) "" +string(4) "8ed4" +string(14) "8ed426616d703b" +string(6) "8ed480" +string(6) "8ed4a0" +string(0) "" +string(0) "" +string(6) "8ed4ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fd4a1" +string(6) "8fd4fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "d5a1" +string(4) "d5fe" +string(0) "" +string(4) "8ed5" +string(14) "8ed526616d703b" +string(6) "8ed580" +string(6) "8ed5a0" +string(0) "" +string(0) "" +string(6) "8ed5ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fd5a1" +string(6) "8fd5fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "d6a1" +string(4) "d6fe" +string(0) "" +string(4) "8ed6" +string(14) "8ed626616d703b" +string(6) "8ed680" +string(6) "8ed6a0" +string(0) "" +string(0) "" +string(6) "8ed6ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fd6a1" +string(6) "8fd6fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "d7a1" +string(4) "d7fe" +string(0) "" +string(4) "8ed7" +string(14) "8ed726616d703b" +string(6) "8ed780" +string(6) "8ed7a0" +string(0) "" +string(0) "" +string(6) "8ed7ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fd7a1" +string(6) "8fd7fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "d8a1" +string(4) "d8fe" +string(0) "" +string(4) "8ed8" +string(14) "8ed826616d703b" +string(6) "8ed880" +string(6) "8ed8a0" +string(0) "" +string(0) "" +string(6) "8ed8ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fd8a1" +string(6) "8fd8fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "d9a1" +string(4) "d9fe" +string(0) "" +string(4) "8ed9" +string(14) "8ed926616d703b" +string(6) "8ed980" +string(6) "8ed9a0" +string(0) "" +string(0) "" +string(6) "8ed9ff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fd9a1" +string(6) "8fd9fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "daa1" +string(4) "dafe" +string(0) "" +string(4) "8eda" +string(14) "8eda26616d703b" +string(6) "8eda80" +string(6) "8edaa0" +string(0) "" +string(0) "" +string(6) "8edaff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fdaa1" +string(6) "8fdafe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "dba1" +string(4) "dbfe" +string(0) "" +string(4) "8edb" +string(14) "8edb26616d703b" +string(6) "8edb80" +string(6) "8edba0" +string(0) "" +string(0) "" +string(6) "8edbff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fdba1" +string(6) "8fdbfe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "dca1" +string(4) "dcfe" +string(0) "" +string(4) "8edc" +string(14) "8edc26616d703b" +string(6) "8edc80" +string(6) "8edca0" +string(0) "" +string(0) "" +string(6) "8edcff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fdca1" +string(6) "8fdcfe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "dda1" +string(4) "ddfe" +string(0) "" +string(4) "8edd" +string(14) "8edd26616d703b" +string(6) "8edd80" +string(6) "8edda0" +string(0) "" +string(0) "" +string(6) "8eddff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fdda1" +string(6) "8fddfe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "dea1" +string(4) "defe" +string(0) "" +string(4) "8ede" +string(14) "8ede26616d703b" +string(6) "8ede80" +string(6) "8edea0" +string(0) "" +string(0) "" +string(6) "8edeff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fdea1" +string(6) "8fdefe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "dfa1" +string(4) "dffe" +string(0) "" +string(4) "8edf" +string(14) "8edf26616d703b" +string(6) "8edf80" +string(6) "8edfa0" +string(0) "" +string(0) "" +string(6) "8edfff" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fdfa1" +string(6) "8fdffe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "e0a1" +string(4) "e0fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fe0a1" +string(6) "8fe0fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "e1a1" +string(4) "e1fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fe1a1" +string(6) "8fe1fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "e2a1" +string(4) "e2fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fe2a1" +string(6) "8fe2fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "e3a1" +string(4) "e3fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fe3a1" +string(6) "8fe3fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "e4a1" +string(4) "e4fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fe4a1" +string(6) "8fe4fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "e5a1" +string(4) "e5fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fe5a1" +string(6) "8fe5fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "e6a1" +string(4) "e6fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fe6a1" +string(6) "8fe6fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "e7a1" +string(4) "e7fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fe7a1" +string(6) "8fe7fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "e8a1" +string(4) "e8fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fe8a1" +string(6) "8fe8fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "e9a1" +string(4) "e9fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fe9a1" +string(6) "8fe9fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "eaa1" +string(4) "eafe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8feaa1" +string(6) "8feafe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "eba1" +string(4) "ebfe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8feba1" +string(6) "8febfe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "eca1" +string(4) "ecfe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8feca1" +string(6) "8fecfe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "eda1" +string(4) "edfe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8feda1" +string(6) "8fedfe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "eea1" +string(4) "eefe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8feea1" +string(6) "8feefe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "efa1" +string(4) "effe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8fefa1" +string(6) "8feffe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "f0a1" +string(4) "f0fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8ff0a1" +string(6) "8ff0fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "f1a1" +string(4) "f1fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8ff1a1" +string(6) "8ff1fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "f2a1" +string(4) "f2fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8ff2a1" +string(6) "8ff2fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "f3a1" +string(4) "f3fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8ff3a1" +string(6) "8ff3fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "f4a1" +string(4) "f4fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8ff4a1" +string(6) "8ff4fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "f5a1" +string(4) "f5fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8ff5a1" +string(6) "8ff5fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "f6a1" +string(4) "f6fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8ff6a1" +string(6) "8ff6fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "f7a1" +string(4) "f7fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8ff7a1" +string(6) "8ff7fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "f8a1" +string(4) "f8fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8ff8a1" +string(6) "8ff8fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "f9a1" +string(4) "f9fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8ff9a1" +string(6) "8ff9fe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "faa1" +string(4) "fafe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8ffaa1" +string(6) "8ffafe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "fba1" +string(4) "fbfe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8ffba1" +string(6) "8ffbfe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "fca1" +string(4) "fcfe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8ffca1" +string(6) "8ffcfe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "fda1" +string(4) "fdfe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8ffda1" +string(6) "8ffdfe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(4) "fea1" +string(4) "fefe" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(0) "" +string(6) "8ffea1" +string(6) "8ffefe" +string(0) "" +-- +string(2) "80" +string(2) "ff" +-- +string(0) "" +string(0) "" +string(4) "8140" +string(4) "817e" +string(0) "" +string(0) "" +string(0) "" +string(4) "81a1" +string(4) "81fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "8240" +string(4) "827e" +string(0) "" +string(0) "" +string(0) "" +string(4) "82a1" +string(4) "82fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "8340" +string(4) "837e" +string(0) "" +string(0) "" +string(0) "" +string(4) "83a1" +string(4) "83fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "8440" +string(4) "847e" +string(0) "" +string(0) "" +string(0) "" +string(4) "84a1" +string(4) "84fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "8540" +string(4) "857e" +string(0) "" +string(0) "" +string(0) "" +string(4) "85a1" +string(4) "85fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "8640" +string(4) "867e" +string(0) "" +string(0) "" +string(0) "" +string(4) "86a1" +string(4) "86fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "8740" +string(4) "877e" +string(0) "" +string(0) "" +string(0) "" +string(4) "87a1" +string(4) "87fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "8840" +string(4) "887e" +string(0) "" +string(0) "" +string(0) "" +string(4) "88a1" +string(4) "88fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "8940" +string(4) "897e" +string(0) "" +string(0) "" +string(0) "" +string(4) "89a1" +string(4) "89fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "8a40" +string(4) "8a7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "8aa1" +string(4) "8afe" +string(0) "" +string(0) "" +string(0) "" +string(4) "8b40" +string(4) "8b7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "8ba1" +string(4) "8bfe" +string(0) "" +string(0) "" +string(0) "" +string(4) "8c40" +string(4) "8c7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "8ca1" +string(4) "8cfe" +string(0) "" +string(0) "" +string(0) "" +string(4) "8d40" +string(4) "8d7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "8da1" +string(4) "8dfe" +string(0) "" +string(0) "" +string(0) "" +string(4) "8e40" +string(4) "8e7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "8ea1" +string(4) "8efe" +string(0) "" +string(0) "" +string(0) "" +string(4) "8f40" +string(4) "8f7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "8fa1" +string(4) "8ffe" +string(0) "" +string(0) "" +string(0) "" +string(4) "9040" +string(4) "907e" +string(0) "" +string(0) "" +string(0) "" +string(4) "90a1" +string(4) "90fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "9140" +string(4) "917e" +string(0) "" +string(0) "" +string(0) "" +string(4) "91a1" +string(4) "91fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "9240" +string(4) "927e" +string(0) "" +string(0) "" +string(0) "" +string(4) "92a1" +string(4) "92fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "9340" +string(4) "937e" +string(0) "" +string(0) "" +string(0) "" +string(4) "93a1" +string(4) "93fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "9440" +string(4) "947e" +string(0) "" +string(0) "" +string(0) "" +string(4) "94a1" +string(4) "94fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "9540" +string(4) "957e" +string(0) "" +string(0) "" +string(0) "" +string(4) "95a1" +string(4) "95fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "9640" +string(4) "967e" +string(0) "" +string(0) "" +string(0) "" +string(4) "96a1" +string(4) "96fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "9740" +string(4) "977e" +string(0) "" +string(0) "" +string(0) "" +string(4) "97a1" +string(4) "97fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "9840" +string(4) "987e" +string(0) "" +string(0) "" +string(0) "" +string(4) "98a1" +string(4) "98fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "9940" +string(4) "997e" +string(0) "" +string(0) "" +string(0) "" +string(4) "99a1" +string(4) "99fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "9a40" +string(4) "9a7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "9aa1" +string(4) "9afe" +string(0) "" +string(0) "" +string(0) "" +string(4) "9b40" +string(4) "9b7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "9ba1" +string(4) "9bfe" +string(0) "" +string(0) "" +string(0) "" +string(4) "9c40" +string(4) "9c7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "9ca1" +string(4) "9cfe" +string(0) "" +string(0) "" +string(0) "" +string(4) "9d40" +string(4) "9d7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "9da1" +string(4) "9dfe" +string(0) "" +string(0) "" +string(0) "" +string(4) "9e40" +string(4) "9e7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "9ea1" +string(4) "9efe" +string(0) "" +string(0) "" +string(0) "" +string(4) "9f40" +string(4) "9f7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "9fa1" +string(4) "9ffe" +string(0) "" +string(0) "" +string(0) "" +string(4) "a040" +string(4) "a07e" +string(0) "" +string(0) "" +string(0) "" +string(4) "a0a1" +string(4) "a0fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "a140" +string(4) "a17e" +string(0) "" +string(0) "" +string(0) "" +string(4) "a1a1" +string(4) "a1fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "a240" +string(4) "a27e" +string(0) "" +string(0) "" +string(0) "" +string(4) "a2a1" +string(4) "a2fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "a340" +string(4) "a37e" +string(0) "" +string(0) "" +string(0) "" +string(4) "a3a1" +string(4) "a3fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "a440" +string(4) "a47e" +string(0) "" +string(0) "" +string(0) "" +string(4) "a4a1" +string(4) "a4fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "a540" +string(4) "a57e" +string(0) "" +string(0) "" +string(0) "" +string(4) "a5a1" +string(4) "a5fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "a640" +string(4) "a67e" +string(0) "" +string(0) "" +string(0) "" +string(4) "a6a1" +string(4) "a6fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "a740" +string(4) "a77e" +string(0) "" +string(0) "" +string(0) "" +string(4) "a7a1" +string(4) "a7fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "a840" +string(4) "a87e" +string(0) "" +string(0) "" +string(0) "" +string(4) "a8a1" +string(4) "a8fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "a940" +string(4) "a97e" +string(0) "" +string(0) "" +string(0) "" +string(4) "a9a1" +string(4) "a9fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "aa40" +string(4) "aa7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "aaa1" +string(4) "aafe" +string(0) "" +string(0) "" +string(0) "" +string(4) "ab40" +string(4) "ab7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "aba1" +string(4) "abfe" +string(0) "" +string(0) "" +string(0) "" +string(4) "ac40" +string(4) "ac7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "aca1" +string(4) "acfe" +string(0) "" +string(0) "" +string(0) "" +string(4) "ad40" +string(4) "ad7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "ada1" +string(4) "adfe" +string(0) "" +string(0) "" +string(0) "" +string(4) "ae40" +string(4) "ae7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "aea1" +string(4) "aefe" +string(0) "" +string(0) "" +string(0) "" +string(4) "af40" +string(4) "af7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "afa1" +string(4) "affe" +string(0) "" +string(0) "" +string(0) "" +string(4) "b040" +string(4) "b07e" +string(0) "" +string(0) "" +string(0) "" +string(4) "b0a1" +string(4) "b0fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "b140" +string(4) "b17e" +string(0) "" +string(0) "" +string(0) "" +string(4) "b1a1" +string(4) "b1fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "b240" +string(4) "b27e" +string(0) "" +string(0) "" +string(0) "" +string(4) "b2a1" +string(4) "b2fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "b340" +string(4) "b37e" +string(0) "" +string(0) "" +string(0) "" +string(4) "b3a1" +string(4) "b3fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "b440" +string(4) "b47e" +string(0) "" +string(0) "" +string(0) "" +string(4) "b4a1" +string(4) "b4fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "b540" +string(4) "b57e" +string(0) "" +string(0) "" +string(0) "" +string(4) "b5a1" +string(4) "b5fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "b640" +string(4) "b67e" +string(0) "" +string(0) "" +string(0) "" +string(4) "b6a1" +string(4) "b6fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "b740" +string(4) "b77e" +string(0) "" +string(0) "" +string(0) "" +string(4) "b7a1" +string(4) "b7fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "b840" +string(4) "b87e" +string(0) "" +string(0) "" +string(0) "" +string(4) "b8a1" +string(4) "b8fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "b940" +string(4) "b97e" +string(0) "" +string(0) "" +string(0) "" +string(4) "b9a1" +string(4) "b9fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "ba40" +string(4) "ba7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "baa1" +string(4) "bafe" +string(0) "" +string(0) "" +string(0) "" +string(4) "bb40" +string(4) "bb7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "bba1" +string(4) "bbfe" +string(0) "" +string(0) "" +string(0) "" +string(4) "bc40" +string(4) "bc7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "bca1" +string(4) "bcfe" +string(0) "" +string(0) "" +string(0) "" +string(4) "bd40" +string(4) "bd7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "bda1" +string(4) "bdfe" +string(0) "" +string(0) "" +string(0) "" +string(4) "be40" +string(4) "be7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "bea1" +string(4) "befe" +string(0) "" +string(0) "" +string(0) "" +string(4) "bf40" +string(4) "bf7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "bfa1" +string(4) "bffe" +string(0) "" +string(0) "" +string(0) "" +string(4) "c040" +string(4) "c07e" +string(0) "" +string(0) "" +string(0) "" +string(4) "c0a1" +string(4) "c0fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "c140" +string(4) "c17e" +string(0) "" +string(0) "" +string(0) "" +string(4) "c1a1" +string(4) "c1fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "c240" +string(4) "c27e" +string(0) "" +string(0) "" +string(0) "" +string(4) "c2a1" +string(4) "c2fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "c340" +string(4) "c37e" +string(0) "" +string(0) "" +string(0) "" +string(4) "c3a1" +string(4) "c3fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "c440" +string(4) "c47e" +string(0) "" +string(0) "" +string(0) "" +string(4) "c4a1" +string(4) "c4fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "c540" +string(4) "c57e" +string(0) "" +string(0) "" +string(0) "" +string(4) "c5a1" +string(4) "c5fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "c640" +string(4) "c67e" +string(0) "" +string(0) "" +string(0) "" +string(4) "c6a1" +string(4) "c6fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "c740" +string(4) "c77e" +string(0) "" +string(0) "" +string(0) "" +string(4) "c7a1" +string(4) "c7fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "c840" +string(4) "c87e" +string(0) "" +string(0) "" +string(0) "" +string(4) "c8a1" +string(4) "c8fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "c940" +string(4) "c97e" +string(0) "" +string(0) "" +string(0) "" +string(4) "c9a1" +string(4) "c9fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "ca40" +string(4) "ca7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "caa1" +string(4) "cafe" +string(0) "" +string(0) "" +string(0) "" +string(4) "cb40" +string(4) "cb7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "cba1" +string(4) "cbfe" +string(0) "" +string(0) "" +string(0) "" +string(4) "cc40" +string(4) "cc7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "cca1" +string(4) "ccfe" +string(0) "" +string(0) "" +string(0) "" +string(4) "cd40" +string(4) "cd7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "cda1" +string(4) "cdfe" +string(0) "" +string(0) "" +string(0) "" +string(4) "ce40" +string(4) "ce7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "cea1" +string(4) "cefe" +string(0) "" +string(0) "" +string(0) "" +string(4) "cf40" +string(4) "cf7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "cfa1" +string(4) "cffe" +string(0) "" +string(0) "" +string(0) "" +string(4) "d040" +string(4) "d07e" +string(0) "" +string(0) "" +string(0) "" +string(4) "d0a1" +string(4) "d0fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "d140" +string(4) "d17e" +string(0) "" +string(0) "" +string(0) "" +string(4) "d1a1" +string(4) "d1fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "d240" +string(4) "d27e" +string(0) "" +string(0) "" +string(0) "" +string(4) "d2a1" +string(4) "d2fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "d340" +string(4) "d37e" +string(0) "" +string(0) "" +string(0) "" +string(4) "d3a1" +string(4) "d3fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "d440" +string(4) "d47e" +string(0) "" +string(0) "" +string(0) "" +string(4) "d4a1" +string(4) "d4fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "d540" +string(4) "d57e" +string(0) "" +string(0) "" +string(0) "" +string(4) "d5a1" +string(4) "d5fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "d640" +string(4) "d67e" +string(0) "" +string(0) "" +string(0) "" +string(4) "d6a1" +string(4) "d6fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "d740" +string(4) "d77e" +string(0) "" +string(0) "" +string(0) "" +string(4) "d7a1" +string(4) "d7fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "d840" +string(4) "d87e" +string(0) "" +string(0) "" +string(0) "" +string(4) "d8a1" +string(4) "d8fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "d940" +string(4) "d97e" +string(0) "" +string(0) "" +string(0) "" +string(4) "d9a1" +string(4) "d9fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "da40" +string(4) "da7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "daa1" +string(4) "dafe" +string(0) "" +string(0) "" +string(0) "" +string(4) "db40" +string(4) "db7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "dba1" +string(4) "dbfe" +string(0) "" +string(0) "" +string(0) "" +string(4) "dc40" +string(4) "dc7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "dca1" +string(4) "dcfe" +string(0) "" +string(0) "" +string(0) "" +string(4) "dd40" +string(4) "dd7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "dda1" +string(4) "ddfe" +string(0) "" +string(0) "" +string(0) "" +string(4) "de40" +string(4) "de7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "dea1" +string(4) "defe" +string(0) "" +string(0) "" +string(0) "" +string(4) "df40" +string(4) "df7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "dfa1" +string(4) "dffe" +string(0) "" +string(0) "" +string(0) "" +string(4) "e040" +string(4) "e07e" +string(0) "" +string(0) "" +string(0) "" +string(4) "e0a1" +string(4) "e0fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "e140" +string(4) "e17e" +string(0) "" +string(0) "" +string(0) "" +string(4) "e1a1" +string(4) "e1fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "e240" +string(4) "e27e" +string(0) "" +string(0) "" +string(0) "" +string(4) "e2a1" +string(4) "e2fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "e340" +string(4) "e37e" +string(0) "" +string(0) "" +string(0) "" +string(4) "e3a1" +string(4) "e3fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "e440" +string(4) "e47e" +string(0) "" +string(0) "" +string(0) "" +string(4) "e4a1" +string(4) "e4fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "e540" +string(4) "e57e" +string(0) "" +string(0) "" +string(0) "" +string(4) "e5a1" +string(4) "e5fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "e640" +string(4) "e67e" +string(0) "" +string(0) "" +string(0) "" +string(4) "e6a1" +string(4) "e6fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "e740" +string(4) "e77e" +string(0) "" +string(0) "" +string(0) "" +string(4) "e7a1" +string(4) "e7fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "e840" +string(4) "e87e" +string(0) "" +string(0) "" +string(0) "" +string(4) "e8a1" +string(4) "e8fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "e940" +string(4) "e97e" +string(0) "" +string(0) "" +string(0) "" +string(4) "e9a1" +string(4) "e9fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "ea40" +string(4) "ea7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "eaa1" +string(4) "eafe" +string(0) "" +string(0) "" +string(0) "" +string(4) "eb40" +string(4) "eb7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "eba1" +string(4) "ebfe" +string(0) "" +string(0) "" +string(0) "" +string(4) "ec40" +string(4) "ec7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "eca1" +string(4) "ecfe" +string(0) "" +string(0) "" +string(0) "" +string(4) "ed40" +string(4) "ed7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "eda1" +string(4) "edfe" +string(0) "" +string(0) "" +string(0) "" +string(4) "ee40" +string(4) "ee7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "eea1" +string(4) "eefe" +string(0) "" +string(0) "" +string(0) "" +string(4) "ef40" +string(4) "ef7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "efa1" +string(4) "effe" +string(0) "" +string(0) "" +string(0) "" +string(4) "f040" +string(4) "f07e" +string(0) "" +string(0) "" +string(0) "" +string(4) "f0a1" +string(4) "f0fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "f140" +string(4) "f17e" +string(0) "" +string(0) "" +string(0) "" +string(4) "f1a1" +string(4) "f1fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "f240" +string(4) "f27e" +string(0) "" +string(0) "" +string(0) "" +string(4) "f2a1" +string(4) "f2fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "f340" +string(4) "f37e" +string(0) "" +string(0) "" +string(0) "" +string(4) "f3a1" +string(4) "f3fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "f440" +string(4) "f47e" +string(0) "" +string(0) "" +string(0) "" +string(4) "f4a1" +string(4) "f4fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "f540" +string(4) "f57e" +string(0) "" +string(0) "" +string(0) "" +string(4) "f5a1" +string(4) "f5fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "f640" +string(4) "f67e" +string(0) "" +string(0) "" +string(0) "" +string(4) "f6a1" +string(4) "f6fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "f740" +string(4) "f77e" +string(0) "" +string(0) "" +string(0) "" +string(4) "f7a1" +string(4) "f7fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "f840" +string(4) "f87e" +string(0) "" +string(0) "" +string(0) "" +string(4) "f8a1" +string(4) "f8fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "f940" +string(4) "f97e" +string(0) "" +string(0) "" +string(0) "" +string(4) "f9a1" +string(4) "f9fe" +string(0) "" +string(0) "" +string(0) "" +string(4) "fa40" +string(4) "fa7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "faa1" +string(4) "fafe" +string(0) "" +string(0) "" +string(0) "" +string(4) "fb40" +string(4) "fb7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "fba1" +string(4) "fbfe" +string(0) "" +string(0) "" +string(0) "" +string(4) "fc40" +string(4) "fc7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "fca1" +string(4) "fcfe" +string(0) "" +string(0) "" +string(0) "" +string(4) "fd40" +string(4) "fd7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "fda1" +string(4) "fdfe" +string(0) "" +string(0) "" +string(0) "" +string(4) "fe40" +string(4) "fe7e" +string(0) "" +string(0) "" +string(0) "" +string(4) "fea1" +string(4) "fefe" +string(0) "" diff --git a/ext/standard/tests/strings/bug50052.phpt b/ext/standard/tests/strings/bug50052.phpt index 24a5a201f..96d859992 100644 --- a/ext/standard/tests/strings/bug50052.phpt +++ b/ext/standard/tests/strings/bug50052.phpt @@ -1,5 +1,5 @@ --TEST--
-Bug #20934 (html_entity_decode() crash when "" is passed)
+Bug #50052 (Different Hashes on Windows and Linux on wrong Salt size)
--FILE--
<?php
$salt = '$1$f+uslYF01$';
diff --git a/ext/standard/tests/strings/bug50847.phpt b/ext/standard/tests/strings/bug50847.phpt new file mode 100644 index 000000000..28e83f511 --- /dev/null +++ b/ext/standard/tests/strings/bug50847.phpt @@ -0,0 +1,10 @@ +--TEST-- +Bug #50847 (strip_tags() removes all tags greater then 1023 bytes long) +--FILE-- +<?php +$var = '<param value="' . str_repeat("a", 2048) . '" />'; +var_dump(strip_tags($var, "<param>"), strip_tags($var)); +?> +--EXPECT-- +string(2066) "<param value="aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" />" +string(0) "" diff --git a/ext/standard/tests/strings/bug51059.phpt b/ext/standard/tests/strings/bug51059.phpt new file mode 100644 index 000000000..f2cbe9def --- /dev/null +++ b/ext/standard/tests/strings/bug51059.phpt @@ -0,0 +1,11 @@ +--TEST-- +Bug #51059 crypt() segfaults on certain salts +--FILE-- +<?php +$res = crypt('a', '_'); +if ($res == '*0' || $res == '*1') echo 'OK'; +else echo 'Not OK'; + +?> +--EXPECT-- +OK diff --git a/ext/standard/tests/strings/crypt_blowfish_invalid_rounds.phpt b/ext/standard/tests/strings/crypt_blowfish_invalid_rounds.phpt new file mode 100644 index 000000000..6d40b0770 --- /dev/null +++ b/ext/standard/tests/strings/crypt_blowfish_invalid_rounds.phpt @@ -0,0 +1,22 @@ +--TEST-- +Test Blowfish crypt() with invalid rounds +--FILE-- +<?php + +foreach(range(32, 38) as $i) { + if (crypt('U*U', '$2a$'.$i.'$CCCCCCCCCCCCCCCCCCCCCC$') === FALSE) { + echo "$i. OK\n"; + } else { + echo "$i. Not OK\n"; + } +} + +?> +--EXPECT-- +32. OK +33. OK +34. OK +35. OK +36. OK +37. OK +38. OK diff --git a/ext/standard/tests/strings/crypt_sha256.phpt b/ext/standard/tests/strings/crypt_sha256.phpt new file mode 100644 index 000000000..86c7245fe --- /dev/null +++ b/ext/standard/tests/strings/crypt_sha256.phpt @@ -0,0 +1,64 @@ +--TEST-- +crypt() SHA-256 +--SKIPIF-- +<?php +if (!function_exists('crypt') || !defined("CRYPT_SHA256")) { + die("SKIP crypt()-sha256 is not available"); +} +?> +--FILE-- +<?php + +$tests = array( + 1 => array( + b'$5$saltstring', + b'Hello world!', + b'$5$saltstring$5B8vYYiY.CVt1RlTTf8KbXBH3hsxY/GNooZaBBGWEc5' + ), + 2 => array( + b'$5$rounds=10000$saltstringsaltstring', + b'Hello world!', + b'$5$rounds=10000$saltstringsaltst$3xv.VbSHBb41AL9AvLeujZkZRBAwqFMz2.opqey6IcA' + ), + 3 => array( + b'$5$rounds=10000$saltstringsaltstring', + b'Hello world!', + b'$5$rounds=10000$saltstringsaltst$3xv.VbSHBb41AL9AvLeujZkZRBAwqFMz2.opqey6IcA' + ), + 4 => array( + b'$5$rounds=5000$toolongsaltstring', + b'This is just a test', + b'$5$rounds=5000$toolongsaltstrin$Un/5jzAHMgOGZ5.mWJpuVolil07guHPvOW8mGRcvxa5' + ), + 5 => array( + b'$5$rounds=1400$anotherlongsaltstring', + b'a very much longer text to encrypt. This one even stretches over morethan one line.', + b'$5$rounds=1400$anotherlongsalts$Rx.j8H.h8HjEDGomFU8bDkXm3XIUnzyxf12oP84Bnq1' + ), + 6 => array( + b'$5$rounds=77777$short', + b'we have a short salt string but not a short password', + b'$5$rounds=77777$short$JiO1O3ZpDAxGJeaDIuqCoEFysAe1mZNJRs3pw0KQRd/' + ), + 7 => array( + b'$5$rounds=123456$asaltof16chars..', + b'a short string', + b'$5$rounds=123456$asaltof16chars..$gP3VQ/6X7UUEW3HkBn2w1/Ptq2jxPyzV/cZKmF/wJvD' + ), + 8 => array( + b'$5$rounds=10$roundstoolow', + b'the minimum number is still observed', + b'$5$rounds=1000$roundstoolow$yfvwcWrQ8l/K0DAWyuPMDNHpIVlTQebY9l/gL972bIC' + ) +); + +foreach ($tests as $iter => $t) { + $res = crypt($t[1], $t[0]); + if ($res != $t[2]) echo "Iteration $iter failed. +Expected: <$t[2]> +Got <$res>\n"; +} +echo "Passes.";?> +--EXPECTF-- +Passes. + diff --git a/ext/standard/tests/strings/crypt_sha512.phpt b/ext/standard/tests/strings/crypt_sha512.phpt new file mode 100644 index 000000000..d6f9df601 --- /dev/null +++ b/ext/standard/tests/strings/crypt_sha512.phpt @@ -0,0 +1,65 @@ +--TEST-- +crypt() SHA-512 +--SKIPIF-- +<?php +if (!function_exists('crypt') || !defined("CRYPT_SHA512")) { + die("SKIP crypt()-sha512 is not available"); +} +?> +--FILE-- +<?php + +$tests = array( + 1 => array( + b'$6$saltstring', + b'Hello world!', + b'$6$saltstring$svn8UoSVapNtMuq1ukKS4tPQd8iKwSMHWjl/O817G3uBnIFNjnQJuesI68u4OTLiBFdcbYEdFCoEOfaS35inz1' + ), + 2 => array( + b'$6$rounds=10000$saltstringsaltstring', + b'Hello world!', + b'$6$rounds=10000$saltstringsaltst$OW1/O6BYHV6BcXZu8QVeXbDWra3Oeqh0sbHbbMCVNSnCM/UrjmM0Dp8vOuZeHBy/YTBmSK6H9qs/y3RnOaw5v.' + ), + 3 => array( + b'$6$rounds=5000$toolongsaltstring', + b'This is just a test', + b'$6$rounds=5000$toolongsaltstrin$lQ8jolhgVRVhY4b5pZKaysCLi0QBxGoNeKQzQ3glMhwllF7oGDZxUhx1yxdYcz/e1JSbq3y6JMxxl8audkUEm0' + ), + 4 => array( + b'$6$rounds=1400$anotherlongsaltstring', + b'a very much longer text to encrypt. This one even stretches over morethan one line.', + b'$6$rounds=1400$anotherlongsalts$POfYwTEok97VWcjxIiSOjiykti.o/pQs.wPvMxQ6Fm7I6IoYN3CmLs66x9t0oSwbtEW7o7UmJEiDwGqd8p4ur1' + ), + 5 => array( + b'$6$rounds=77777$short', + b'we have a short salt string but not a short password', + b'$6$rounds=77777$short$WuQyW2YR.hBNpjjRhpYD/ifIw05xdfeEyQoMxIXbkvr0gge1a1x3yRULJ5CCaUeOxFmtlcGZelFl5CxtgfiAc0' + ), + 6 => array( + b'$6$rounds=123456$asaltof16chars..', + b'a short string', + b'$6$rounds=123456$asaltof16chars..$BtCwjqMJGx5hrJhZywWvt0RLE8uZ4oPwcelCjmw2kSYu.Ec6ycULevoBK25fs2xXgMNrCzIMVcgEJAstJeonj1' + ), + 7 => array( + b'$6$rounds=10$roundstoolow', + b'the minimum number is still observed', + b'$6$rounds=1000$roundstoolow$kUMsbe306n21p9R.FRkW3IGn.S9NPN0x50YhH1xhLsPuWGsUSklZt58jaTfF4ZEQpyUNGc0dqbpBYYBaHHrsX.' + ), + 8 => array( + b'$6$$bar$', + b'foo', + b'$6$$QMXjqd7rHQZPQ1yHsXkQqC1FBzDiVfTHXL.LaeDAeVV.IzMaV9VU4MQ8kPuZa2SOP1A0RPm772EaFYjpEJtdu.' + ), +); + +foreach ($tests as $iter => $t) { + $res = crypt($t[1], $t[0]); + if ($res != $t[2]) echo "Iteration $iter failed. +Expected: <$t[2]> +Got <$res>\n"; +} +echo "Passes."; +?> +--EXPECTF-- +Passes. + diff --git a/ext/standard/tests/strings/html_entity_decode_html4.phpt b/ext/standard/tests/strings/html_entity_decode_html4.phpt new file mode 100644 index 000000000..3c92bf6fb --- /dev/null +++ b/ext/standard/tests/strings/html_entity_decode_html4.phpt @@ -0,0 +1,516 @@ +--TEST-- +html_entity_decode() conformance check (HTML 4) +--FILE-- +<?php +$map = array( + """, + "&", + "<", + ">", + " ", + "¡", + "¢", + "£", + "¤", + "¥", + "¦", + "§", + "¨", + "©", + "ª", + "«", + "¬", + "­", + "®", + "¯", + "°", + "±", + "²", + "³", + "´", + "µ", + "¶", + "·", + "¸", + "¹", + "º", + "»", + "¼", + "½", + "¾", + "¿", + "À", + "Á", + "Â", + "Ã", + "Ä", + "Å", + "Æ", + "Ç", + "È", + "É", + "Ê", + "Ë", + "Ì", + "Í", + "Î", + "Ï", + "Ð", + "Ñ", + "Ò", + "Ó", + "Ô", + "Õ", + "Ö", + "×", + "Ø", + "Ù", + "Ú", + "Û", + "Ü", + "Ý", + "Þ", + "ß", + "à", + "á", + "â", + "ã", + "ä", + "å", + "æ", + "ç", + "è", + "é", + "ê", + "ë", + "ì", + "í", + "î", + "ï", + "ð", + "ñ", + "ò", + "ó", + "ô", + "õ", + "ö", + "÷", + "ø", + "ù", + "ú", + "û", + "ü", + "ý", + "þ", + "ÿ", + "Œ", + "œ", + "Š", + "š", + "Ÿ", + "ƒ", + "ˆ", + "˜", + "Α", + "Β", + "Γ", + "Δ", + "Ε", + "Ζ", + "Η", + "Θ", + "Ι", + "Κ", + "Λ", + "Μ", + "Ν", + "Ξ", + "Ο", + "Π", + "Ρ", + "Σ", + "Τ", + "Υ", + "Φ", + "Χ", + "Ψ", + "Ω", + "α", + "β", + "γ", + "δ", + "ε", + "ζ", + "η", + "θ", + "ι", + "κ", + "λ", + "μ", + "ν", + "ξ", + "ο", + "π", + "ρ", + "ς", + "σ", + "τ", + "υ", + "φ", + "χ", + "ψ", + "ω", + "ϑ", + "ϒ", + "ϖ", + " ", + " ", + " ", + "‌", + "‍", + "‎", + "‏", + "–", + "—", + "‘", + "’", + "‚", + "“", + "”", + "„", + "†", + "‡", + "•", + "…", + "‰", + "′", + "″", + "‹", + "›", + "‾", + "⁄", + "€", + "ℑ", + "℘", + "ℜ", + "™", + "ℵ", + "←", + "↑", + "→", + "↓", + "↔", + "↵", + "⇐", + "⇑", + "⇒", + "⇓", + "⇔", + "∀", + "∂", + "∃", + "∅", + "∇", + "∈", + "∉", + "∋", + "∏", + "∑", + "−", + "∗", + "√", + "∝", + "∞", + "∠", + "∧", + "∨", + "∩", + "∪", + "∫", + "∴", + "∼", + "≅", + "≈", + "≠", + "≡", + "≤", + "≥", + "⊂", + "⊃", + "⊄", + "⊆", + "⊇", + "⊕", + "⊗", + "⊥", + "⋅", + "⌈", + "⌉", + "⌊", + "⌋", + "⟨", + "⟩", + "◊", + "♠", + "♣", + "♥", + "♦", +); + +foreach ($map as $str) { + echo bin2hex(html_entity_decode($str, ENT_QUOTES, "UTF-8")), "\n"; +} +?> +--EXPECT-- +22 +26 +3c +3e +c2a0 +c2a1 +c2a2 +c2a3 +c2a4 +c2a5 +c2a6 +c2a7 +c2a8 +c2a9 +c2aa +c2ab +c2ac +c2ad +c2ae +c2af +c2b0 +c2b1 +c2b2 +c2b3 +c2b4 +c2b5 +c2b6 +c2b7 +c2b8 +c2b9 +c2ba +c2bb +c2bc +c2bd +c2be +c2bf +c380 +c381 +c382 +c383 +c384 +c385 +c386 +c387 +c388 +c389 +c38a +c38b +c38c +c38d +c38e +c38f +c390 +c391 +c392 +c393 +c394 +c395 +c396 +c397 +c398 +c399 +c39a +c39b +c39c +c39d +c39e +c39f +c3a0 +c3a1 +c3a2 +c3a3 +c3a4 +c3a5 +c3a6 +c3a7 +c3a8 +c3a9 +c3aa +c3ab +c3ac +c3ad +c3ae +c3af +c3b0 +c3b1 +c3b2 +c3b3 +c3b4 +c3b5 +c3b6 +c3b7 +c3b8 +c3b9 +c3ba +c3bb +c3bc +c3bd +c3be +c3bf +c592 +c593 +c5a0 +c5a1 +c5b8 +c692 +cb86 +cb9c +ce91 +ce92 +ce93 +ce94 +ce95 +ce96 +ce97 +ce98 +ce99 +ce9a +ce9b +ce9c +ce9d +ce9e +ce9f +cea0 +cea1 +cea3 +cea4 +cea5 +cea6 +cea7 +cea8 +cea9 +ceb1 +ceb2 +ceb3 +ceb4 +ceb5 +ceb6 +ceb7 +ceb8 +ceb9 +ceba +cebb +cebc +cebd +cebe +cebf +cf80 +cf81 +cf82 +cf83 +cf84 +cf85 +cf86 +cf87 +cf88 +cf89 +cf91 +cf92 +cf96 +e28082 +e28083 +e28089 +e2808c +e2808d +e2808e +e2808f +e28093 +e28094 +e28098 +e28099 +e2809a +e2809c +e2809d +e2809e +e280a0 +e280a1 +e280a2 +e280a6 +e280b0 +e280b2 +e280b3 +e280b9 +e280ba +e280be +e28184 +e282ac +e28491 +e28498 +e2849c +e284a2 +e284b5 +e28690 +e28691 +e28692 +e28693 +e28694 +e286b5 +e28790 +e28791 +e28792 +e28793 +e28794 +e28880 +e28882 +e28883 +e28885 +e28887 +e28888 +e28889 +e2888b +e2888f +e28891 +e28892 +e28897 +e2889a +e2889d +e2889e +e288a0 +e288a7 +e288a8 +e288a9 +e288aa +e288ab +e288b4 +e288bc +e28985 +e28988 +e289a0 +e289a1 +e289a4 +e289a5 +e28a82 +e28a83 +e28a84 +e28a86 +e28a87 +e28a95 +e28a97 +e28aa5 +e28b85 +e28c88 +e28c89 +e28c8a +e28c8b +e28ca9 +e28caa +e2978a +e299a0 +e299a3 +e299a5 +e299a6 diff --git a/ext/standard/tests/strings/htmlentities-utf-2.phpt b/ext/standard/tests/strings/htmlentities-utf-2.phpt index a80100cb1..c5f4ac4ea 100755 --- a/ext/standard/tests/strings/htmlentities-utf-2.phpt +++ b/ext/standard/tests/strings/htmlentities-utf-2.phpt @@ -36,8 +36,8 @@ foreach($strings as $string) { %unicode|string%(0) "" %unicode|string%(2) "79" %unicode|string%(2) "79" -%unicode|string%(8) "2667743b" -%unicode|string%(8) "2667743b" +%unicode|string%(0) "" +%unicode|string%(0) "" %unicode|string%(8) "566f696c" %unicode|string%(8) "566f696c" %unicode|string%(12) "436c69636873" @@ -52,10 +52,10 @@ foreach($strings as $string) { %unicode|string%(2) "79" %unicode|string%(8) "f7bfbfbf" %unicode|string%(8) "f7bfbfbf" -%unicode|string%(10) "fbbfbfbfbf" -%unicode|string%(10) "fbbfbfbfbf" -%unicode|string%(12) "fdbfbfbfbfbf" -%unicode|string%(12) "fdbfbfbfbfbf" +%unicode|string%(0) "" +%unicode|string%(0) "" +%unicode|string%(0) "" +%unicode|string%(0) "" %unicode|string%(4) "4142" %unicode|string%(4) "4142" %unicode|string%(4) "4242" diff --git a/ext/standard/tests/strings/htmlentities-utf.phpt b/ext/standard/tests/strings/htmlentities-utf.phpt index b85803a16..1daafc61d 100755 --- a/ext/standard/tests/strings/htmlentities-utf.phpt +++ b/ext/standard/tests/strings/htmlentities-utf.phpt @@ -36,8 +36,8 @@ foreach($strings as $string) { %unicode|string%(0) "" %unicode|string%(0) "" %unicode|string%(0) "" -%unicode|string%(8) "2667743b" -%unicode|string%(8) "2667743b" +%unicode|string%(0) "" +%unicode|string%(0) "" %unicode|string%(0) "" %unicode|string%(0) "" %unicode|string%(0) "" @@ -52,10 +52,10 @@ foreach($strings as $string) { %unicode|string%(0) "" %unicode|string%(8) "f7bfbfbf" %unicode|string%(8) "f7bfbfbf" -%unicode|string%(10) "fbbfbfbfbf" -%unicode|string%(10) "fbbfbfbfbf" -%unicode|string%(12) "fdbfbfbfbfbf" -%unicode|string%(12) "fdbfbfbfbfbf" +%unicode|string%(0) "" +%unicode|string%(0) "" +%unicode|string%(0) "" +%unicode|string%(0) "" %unicode|string%(0) "" %unicode|string%(0) "" %unicode|string%(0) "" diff --git a/ext/standard/tests/strings/htmlentities02.phpt b/ext/standard/tests/strings/htmlentities02.phpt index b8b9e6315..5d708c21c 100644 --- a/ext/standard/tests/strings/htmlentities02.phpt +++ b/ext/standard/tests/strings/htmlentities02.phpt @@ -10,7 +10,7 @@ if (!$result) { --INI-- output_handler= default_charset= -mbstring.internal_encoding=none +mbstring.internal_encoding=pass --FILE-- <?php setlocale(LC_CTYPE, "fr_FR.ISO-8859-15", "fr_FR.ISO8859-15", 'fr_FR@euro'); diff --git a/ext/standard/tests/strings/htmlentities03.phpt b/ext/standard/tests/strings/htmlentities03.phpt index 7e933544f..9f40ff3bc 100644 --- a/ext/standard/tests/strings/htmlentities03.phpt +++ b/ext/standard/tests/strings/htmlentities03.phpt @@ -10,7 +10,7 @@ if (!$result || preg_match('/ISO/i', setlocale(LC_CTYPE, 0)) == 0) { --INI-- output_handler= default_charset= -mbstring.internal_encoding=none +mbstring.internal_encoding=pass --FILE-- <?php setlocale( LC_CTYPE, "de_DE.ISO-8859-1", "de_DE.ISO8859-1"); diff --git a/ext/standard/tests/strings/htmlentities04.phpt b/ext/standard/tests/strings/htmlentities04.phpt index 8e362d073..565c11bbc 100644 --- a/ext/standard/tests/strings/htmlentities04.phpt +++ b/ext/standard/tests/strings/htmlentities04.phpt @@ -10,7 +10,7 @@ if (!$result || preg_match('/EUC[^a-zA-Z]*JP/i', setlocale(LC_CTYPE, 0)) == 0) { --INI-- output_handler= default_charset= -mbstring.internal_encoding=none +mbstring.internal_encoding=pass --FILE-- <?php setlocale( LC_CTYPE, "ja_JP.EUC-JP", "ja_JP.eucJP" ); diff --git a/ext/standard/tests/strings/htmlentities15.phpt b/ext/standard/tests/strings/htmlentities15.phpt index 2dc36e6f7..f45be118c 100644 --- a/ext/standard/tests/strings/htmlentities15.phpt +++ b/ext/standard/tests/strings/htmlentities15.phpt @@ -3,7 +3,7 @@ htmlentities() test 15 (setlocale / KOI8-R) --INI-- output_handler= default_charset= -mbstring.internal_encoding=none +mbstring.internal_encoding=pass --SKIPIF-- <?php $result = (bool)setlocale(LC_CTYPE, "ru_RU.koi8r", "ru_RU.KOI8-R"); diff --git a/ext/standard/tests/strings/htmlentities_html4.phpt b/ext/standard/tests/strings/htmlentities_html4.phpt new file mode 100644 index 000000000..3f700e828 --- /dev/null +++ b/ext/standard/tests/strings/htmlentities_html4.phpt @@ -0,0 +1,305 @@ +--TEST-- +htmlentities() conformance check (HTML 4) +--FILE-- +<?php +function utf32_utf8($k) { + if ($k < 0x80) { + $retval = pack('C', $k); + } else if ($k < 0x800) { + $retval = pack('C2', + 0xc0 | ($k >> 6), + 0x80 | ($k & 0x3f)); + } else if ($k < 0x10000) { + $retval = pack('C3', + 0xe0 | ($k >> 12), + 0x80 | (($k >> 6) & 0x3f), + 0x80 | ($k & 0x3f)); + } else if ($k < 0x200000) { + $retval = pack('C4', + 0xf0 | ($k >> 18), + 0x80 | (($k >> 12) & 0x3f), + 0x80 | (($k >> 6) & 0x3f), + 0x80 | ($k & 0x3f)); + } else if ($k < 0x4000000) { + $retval = pack('C5', + 0xf8 | ($k >> 24), + 0x80 | (($k >> 18) & 0x3f), + 0x80 | (($k >> 12) & 0x3f), + 0x80 | (($k >> 6) & 0x3f), + 0x80 | ($k & 0x3f)); + } else { + $retval = pack('C6', + 0xfc | ($k >> 30), + 0x80 | (($k >> 24) & 0x3f), + 0x80 | (($k >> 18) & 0x3f), + 0x80 | (($k >> 12) & 0x3f), + 0x80 | (($k >> 6) & 0x3f), + 0x80 | ($k & 0x3f)); + } + return $retval; +} + +for ($i = 0; $i < 0x110000; $i++) { + if ($i >= 0xd800 && $i < 0xe000) + continue; + $str = utf32_utf8($i); + $result = htmlentities($str, ENT_QUOTES, 'UTF-8'); + if ($str != $result) { + printf("%s\tU+%05X\n", $result, $i); + } +} +?> +--EXPECT-- +" U+00022 +& U+00026 +' U+00027 +< U+0003C +> U+0003E + U+000A0 +¡ U+000A1 +¢ U+000A2 +£ U+000A3 +¤ U+000A4 +¥ U+000A5 +¦ U+000A6 +§ U+000A7 +¨ U+000A8 +© U+000A9 +ª U+000AA +« U+000AB +¬ U+000AC +­ U+000AD +® U+000AE +¯ U+000AF +° U+000B0 +± U+000B1 +² U+000B2 +³ U+000B3 +´ U+000B4 +µ U+000B5 +¶ U+000B6 +· U+000B7 +¸ U+000B8 +¹ U+000B9 +º U+000BA +» U+000BB +¼ U+000BC +½ U+000BD +¾ U+000BE +¿ U+000BF +À U+000C0 +Á U+000C1 + U+000C2 +à U+000C3 +Ä U+000C4 +Å U+000C5 +Æ U+000C6 +Ç U+000C7 +È U+000C8 +É U+000C9 +Ê U+000CA +Ë U+000CB +Ì U+000CC +Í U+000CD +Î U+000CE +Ï U+000CF +Ð U+000D0 +Ñ U+000D1 +Ò U+000D2 +Ó U+000D3 +Ô U+000D4 +Õ U+000D5 +Ö U+000D6 +× U+000D7 +Ø U+000D8 +Ù U+000D9 +Ú U+000DA +Û U+000DB +Ü U+000DC +Ý U+000DD +Þ U+000DE +ß U+000DF +à U+000E0 +á U+000E1 +â U+000E2 +ã U+000E3 +ä U+000E4 +å U+000E5 +æ U+000E6 +ç U+000E7 +è U+000E8 +é U+000E9 +ê U+000EA +ë U+000EB +ì U+000EC +í U+000ED +î U+000EE +ï U+000EF +ð U+000F0 +ñ U+000F1 +ò U+000F2 +ó U+000F3 +ô U+000F4 +õ U+000F5 +ö U+000F6 +÷ U+000F7 +ø U+000F8 +ù U+000F9 +ú U+000FA +û U+000FB +ü U+000FC +ý U+000FD +þ U+000FE +ÿ U+000FF +Œ U+00152 +œ U+00153 +Š U+00160 +š U+00161 +Ÿ U+00178 +ƒ U+00192 +ˆ U+002C6 +˜ U+002DC +Α U+00391 +Β U+00392 +Γ U+00393 +Δ U+00394 +Ε U+00395 +Ζ U+00396 +Η U+00397 +Θ U+00398 +Ι U+00399 +Κ U+0039A +Λ U+0039B +Μ U+0039C +Ν U+0039D +Ξ U+0039E +Ο U+0039F +Π U+003A0 +Ρ U+003A1 +Σ U+003A3 +Τ U+003A4 +Υ U+003A5 +Φ U+003A6 +Χ U+003A7 +Ψ U+003A8 +Ω U+003A9 +α U+003B1 +β U+003B2 +γ U+003B3 +δ U+003B4 +ε U+003B5 +ζ U+003B6 +η U+003B7 +θ U+003B8 +ι U+003B9 +κ U+003BA +λ U+003BB +μ U+003BC +ν U+003BD +ξ U+003BE +ο U+003BF +π U+003C0 +ρ U+003C1 +ς U+003C2 +σ U+003C3 +τ U+003C4 +υ U+003C5 +φ U+003C6 +χ U+003C7 +ψ U+003C8 +ω U+003C9 +ϑ U+003D1 +ϒ U+003D2 +ϖ U+003D6 +  U+02002 +  U+02003 +  U+02009 +‌ U+0200C +‍ U+0200D +‎ U+0200E +‏ U+0200F +– U+02013 +— U+02014 +‘ U+02018 +’ U+02019 +‚ U+0201A +“ U+0201C +” U+0201D +„ U+0201E +† U+02020 +‡ U+02021 +• U+02022 +… U+02026 +‰ U+02030 +′ U+02032 +″ U+02033 +‹ U+02039 +› U+0203A +‾ U+0203E +⁄ U+02044 +€ U+020AC +ℑ U+02111 +℘ U+02118 +ℜ U+0211C +™ U+02122 +ℵ U+02135 +← U+02190 +↑ U+02191 +→ U+02192 +↓ U+02193 +↔ U+02194 +↵ U+021B5 +⇐ U+021D0 +⇑ U+021D1 +⇒ U+021D2 +⇓ U+021D3 +⇔ U+021D4 +∀ U+02200 +∂ U+02202 +∃ U+02203 +∅ U+02205 +∇ U+02207 +∈ U+02208 +∉ U+02209 +∋ U+0220B +∏ U+0220F +∑ U+02211 +− U+02212 +∗ U+02217 +√ U+0221A +∝ U+0221D +∞ U+0221E +∠ U+02220 +∧ U+02227 +∨ U+02228 +∩ U+02229 +∪ U+0222A +∫ U+0222B +∴ U+02234 +∼ U+0223C +≅ U+02245 +≈ U+02248 +≠ U+02260 +≡ U+02261 +≤ U+02264 +≥ U+02265 +⊂ U+02282 +⊃ U+02283 +⊄ U+02284 +⊆ U+02286 +⊇ U+02287 +⊕ U+02295 +⊗ U+02297 +⊥ U+022A5 +⋅ U+022C5 +⌈ U+02308 +⌉ U+02309 +⌊ U+0230A +⌋ U+0230B +⟨ U+02329 +⟩ U+0232A +◊ U+025CA +♠ U+02660 +♣ U+02663 +♥ U+02665 +♦ U+02666 diff --git a/ext/standard/tests/strings/parse_str_basic3.phpt b/ext/standard/tests/strings/parse_str_basic3.phpt index 5b0641e14..0cc761615 100644 --- a/ext/standard/tests/strings/parse_str_basic3.phpt +++ b/ext/standard/tests/strings/parse_str_basic3.phpt @@ -91,7 +91,7 @@ var_dump($res); ?> ===DONE=== --EXPECTF-- -PHP Warning: Directive 'magic_quotes_gpc' is deprecated in PHP 5.3 and greater in Unknown on line 0 +Warning: Directive 'magic_quotes_gpc' is deprecated in PHP 5.3 and greater in Unknown on line 0 *** Testing parse_str() : basic functionality *** Test string with array values diff --git a/ext/standard/tests/strings/setlocale_variation2.phpt b/ext/standard/tests/strings/setlocale_variation2.phpt index 98c405b70..af8739a76 100644 --- a/ext/standard/tests/strings/setlocale_variation2.phpt +++ b/ext/standard/tests/strings/setlocale_variation2.phpt @@ -18,6 +18,10 @@ if (substr(PHP_OS, 0, 3) == 'WIN') { /* setlocale() to set all available locales in the system and check the success count */ echo "*** Testing setlocale() : usage variations ***\n"; +function good_locale($locale) { + return $locale !== 'tt_RU@iqtelif.UTF-8'; +} + /* Prototype : array list_system_locales( void ) * Description: To get the currently installed locle in this platform * Arguments : Nil @@ -38,8 +42,8 @@ function list_system_locales() { $system_locales = explode("\n", $all_locales); - // return all the locale found in the system - return $system_locales; + // return all the locale found in the system, except for broken one + return array_filter($system_locales, 'good_locale'); } // gather all the locales installed in the system |
