summaryrefslogtreecommitdiff
path: root/ext/standard/tests
diff options
context:
space:
mode:
Diffstat (limited to 'ext/standard/tests')
-rw-r--r--ext/standard/tests/array/array_flip_variation2.phptbin2178 -> 2179 bytes
-rw-r--r--ext/standard/tests/array/bug50006.phpt29
-rw-r--r--ext/standard/tests/array/bug50006_1.phpt29
-rw-r--r--ext/standard/tests/array/bug50006_2.phpt29
-rw-r--r--ext/standard/tests/array/uasort_variation5.phpt2
-rw-r--r--ext/standard/tests/bug49244.phpt32
-rw-r--r--ext/standard/tests/file/005_variation2-win32.phpt10
-rw-r--r--ext/standard/tests/file/bug26615.phpt2
-rw-r--r--ext/standard/tests/file/bug47767.phpt5
-rw-r--r--ext/standard/tests/file/chmod_variation3.phpt16
-rwxr-xr-xext/standard/tests/file/fflush_basic.phpt4
-rw-r--r--ext/standard/tests/file/fgetss_basic1.phpt6
-rw-r--r--ext/standard/tests/file/fgetss_basic2-win32.phpt4
-rw-r--r--ext/standard/tests/file/fgetss_variation1-win32.phpt6
-rw-r--r--ext/standard/tests/file/fgetss_variation3-win32.phpt6
-rw-r--r--ext/standard/tests/file/fgetss_variation4.phpt5
-rw-r--r--ext/standard/tests/file/fgetss_variation5-win32.phpt5
-rw-r--r--ext/standard/tests/file/file.inc20
-rw-r--r--ext/standard/tests/file/fopen_variation10-win32.phpt5
-rw-r--r--ext/standard/tests/file/fopen_variation11-win32.phpt4
-rw-r--r--ext/standard/tests/file/fopen_variation17.phpt2
-rw-r--r--ext/standard/tests/file/fpassthru_basic.phpt4
-rw-r--r--ext/standard/tests/file/mkdir_variation1-win32.phpt16
-rw-r--r--ext/standard/tests/file/realpath_cache.phpt30
-rw-r--r--ext/standard/tests/file/realpath_cache_win32.phpt38
-rw-r--r--ext/standard/tests/file/rename_variation-win32.phpt2
-rw-r--r--ext/standard/tests/file/rename_variation11-win32.phpt6
-rw-r--r--ext/standard/tests/file/rename_variation12-win32.phpt121
-rw-r--r--ext/standard/tests/file/rename_variation12.phpt12
-rw-r--r--ext/standard/tests/file/rename_variation13-win32.phptbin3614 -> 3947 bytes
-rw-r--r--ext/standard/tests/file/rename_variation13.phpt19
-rw-r--r--ext/standard/tests/file/rename_variation3-win32.phpt5
-rw-r--r--ext/standard/tests/file/rename_variation6-win32.phpt4
-rw-r--r--ext/standard/tests/file/rename_variation8-win32.phpt70
-rw-r--r--ext/standard/tests/file/rename_variation8.phpt5
-rw-r--r--ext/standard/tests/file/rename_variation9.phpt2
-rw-r--r--ext/standard/tests/file/rmdir_variation1-win32.phpt16
-rw-r--r--ext/standard/tests/file/rmdir_variation1.phpt2
-rw-r--r--ext/standard/tests/file/tempnam_variation3-win32.phpt147
-rw-r--r--ext/standard/tests/file/tempnam_variation3.phpt2
-rw-r--r--ext/standard/tests/file/tempnam_variation7-win32.phpt73
-rw-r--r--ext/standard/tests/file/tempnam_variation7.phpt2
-rw-r--r--ext/standard/tests/file/unlink_error-win32.phpt6
-rw-r--r--ext/standard/tests/file/userstreams_003.phpt2
-rw-r--r--ext/standard/tests/file/windows_acls/common.inc2
-rw-r--r--ext/standard/tests/file/windows_links/bug48746.phpt55
-rw-r--r--ext/standard/tests/file/windows_links/bug48746_1.phpt56
-rw-r--r--ext/standard/tests/file/windows_links/bug48746_2.phpt66
-rw-r--r--ext/standard/tests/file/windows_links/bug48746_3.phpt48
-rw-r--r--ext/standard/tests/general_functions/.getservbyport_basic.phpt.swpbin12288 -> 0 bytes
-rw-r--r--ext/standard/tests/general_functions/bug49692.ini4
-rw-r--r--ext/standard/tests/general_functions/bug49692.phpt20
-rw-r--r--ext/standard/tests/general_functions/bug49847.phpt25
-rw-r--r--ext/standard/tests/general_functions/bug50690.phpt14
-rw-r--r--ext/standard/tests/general_functions/bug50732.phpt12
-rw-r--r--ext/standard/tests/general_functions/get_cfg_var_variation8.phpt2
-rw-r--r--ext/standard/tests/general_functions/import_request.phpt12
-rw-r--r--ext/standard/tests/general_functions/is_callable_basic1.phpt4
-rw-r--r--ext/standard/tests/general_functions/phpcredits.phpt2
-rw-r--r--ext/standard/tests/general_functions/proc_nice_basic.phpt4
-rw-r--r--ext/standard/tests/general_functions/proc_nice_error.phpt4
-rw-r--r--ext/standard/tests/general_functions/proc_nice_variation1.phpt4
-rw-r--r--ext/standard/tests/general_functions/proc_nice_variation2.phpt4
-rw-r--r--ext/standard/tests/general_functions/proc_nice_variation3.phpt4
-rw-r--r--ext/standard/tests/general_functions/proc_nice_variation5.phpt5
-rw-r--r--ext/standard/tests/general_functions/proc_nice_variation6.phpt4
-rw-r--r--ext/standard/tests/general_functions/proc_nice_variation7.phpt4
-rw-r--r--ext/standard/tests/general_functions/putenv_error1.phpt2
-rw-r--r--ext/standard/tests/general_functions/putenv_error2.phpt2
-rw-r--r--ext/standard/tests/general_functions/strval.phpt4
-rw-r--r--ext/standard/tests/general_functions/sunfuncts.phpt42
-rw-r--r--ext/standard/tests/mail/mail_basic.phpt1
-rw-r--r--ext/standard/tests/mail/mail_basic2.phpt15
-rw-r--r--ext/standard/tests/mail/mail_variation2.phpt11
-rw-r--r--ext/standard/tests/misc/syslog_vars_variation1.phpt2
-rw-r--r--ext/standard/tests/misc/time_sleep_until_error2.phpt4
-rw-r--r--ext/standard/tests/network/define_syslog_variables_variation-win32.phpt97
-rw-r--r--ext/standard/tests/network/define_syslog_variables_variation.phpt13
-rw-r--r--ext/standard/tests/php_ini_loaded_file.phpt5
-rw-r--r--ext/standard/tests/streams/bug49936.phpt26
-rw-r--r--ext/standard/tests/streams/bug49936_win32.phpt30
-rw-r--r--ext/standard/tests/streams/stream_resolve_include_path.phpt37
-rw-r--r--ext/standard/tests/strings/bug49785.phpt4124
-rw-r--r--ext/standard/tests/strings/bug50052.phpt2
-rw-r--r--ext/standard/tests/strings/bug50847.phpt10
-rw-r--r--ext/standard/tests/strings/bug51059.phpt11
-rw-r--r--ext/standard/tests/strings/crypt_blowfish_invalid_rounds.phpt22
-rw-r--r--ext/standard/tests/strings/crypt_sha256.phpt64
-rw-r--r--ext/standard/tests/strings/crypt_sha512.phpt65
-rw-r--r--ext/standard/tests/strings/html_entity_decode_html4.phpt516
-rwxr-xr-xext/standard/tests/strings/htmlentities-utf-2.phpt12
-rwxr-xr-xext/standard/tests/strings/htmlentities-utf.phpt12
-rw-r--r--ext/standard/tests/strings/htmlentities02.phpt2
-rw-r--r--ext/standard/tests/strings/htmlentities03.phpt2
-rw-r--r--ext/standard/tests/strings/htmlentities04.phpt2
-rw-r--r--ext/standard/tests/strings/htmlentities15.phpt2
-rw-r--r--ext/standard/tests/strings/htmlentities_html4.phpt305
-rw-r--r--ext/standard/tests/strings/parse_str_basic3.phpt2
-rw-r--r--ext/standard/tests/strings/setlocale_variation2.phpt8
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
index 1474a6955..997c39130 100644
--- a/ext/standard/tests/array/array_flip_variation2.phpt
+++ b/ext/standard/tests/array/array_flip_variation2.phpt
Binary files differ
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
index 290095629..a86025889 100644
--- a/ext/standard/tests/file/rename_variation13-win32.phpt
+++ b/ext/standard/tests/file/rename_variation13-win32.phpt
Binary files differ
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
deleted file mode 100644
index dc8000aa0..000000000
--- a/ext/standard/tests/general_functions/.getservbyport_basic.phpt.swp
+++ /dev/null
Binary files differ
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(
+ "&quot;",
+ "&amp;",
+ "&lt;",
+ "&gt;",
+ "&nbsp;",
+ "&iexcl;",
+ "&cent;",
+ "&pound;",
+ "&curren;",
+ "&yen;",
+ "&brvbar;",
+ "&sect;",
+ "&uml;",
+ "&copy;",
+ "&ordf;",
+ "&laquo;",
+ "&not;",
+ "&shy;",
+ "&reg;",
+ "&macr;",
+ "&deg;",
+ "&plusmn;",
+ "&sup2;",
+ "&sup3;",
+ "&acute;",
+ "&micro;",
+ "&para;",
+ "&middot;",
+ "&cedil;",
+ "&sup1;",
+ "&ordm;",
+ "&raquo;",
+ "&frac14;",
+ "&frac12;",
+ "&frac34;",
+ "&iquest;",
+ "&Agrave;",
+ "&Aacute;",
+ "&Acirc;",
+ "&Atilde;",
+ "&Auml;",
+ "&Aring;",
+ "&AElig;",
+ "&Ccedil;",
+ "&Egrave;",
+ "&Eacute;",
+ "&Ecirc;",
+ "&Euml;",
+ "&Igrave;",
+ "&Iacute;",
+ "&Icirc;",
+ "&Iuml;",
+ "&ETH;",
+ "&Ntilde;",
+ "&Ograve;",
+ "&Oacute;",
+ "&Ocirc;",
+ "&Otilde;",
+ "&Ouml;",
+ "&times;",
+ "&Oslash;",
+ "&Ugrave;",
+ "&Uacute;",
+ "&Ucirc;",
+ "&Uuml;",
+ "&Yacute;",
+ "&THORN;",
+ "&szlig;",
+ "&agrave;",
+ "&aacute;",
+ "&acirc;",
+ "&atilde;",
+ "&auml;",
+ "&aring;",
+ "&aelig;",
+ "&ccedil;",
+ "&egrave;",
+ "&eacute;",
+ "&ecirc;",
+ "&euml;",
+ "&igrave;",
+ "&iacute;",
+ "&icirc;",
+ "&iuml;",
+ "&eth;",
+ "&ntilde;",
+ "&ograve;",
+ "&oacute;",
+ "&ocirc;",
+ "&otilde;",
+ "&ouml;",
+ "&divide;",
+ "&oslash;",
+ "&ugrave;",
+ "&uacute;",
+ "&ucirc;",
+ "&uuml;",
+ "&yacute;",
+ "&thorn;",
+ "&yuml;",
+ "&OElig;",
+ "&oelig;",
+ "&Scaron;",
+ "&scaron;",
+ "&Yuml;",
+ "&fnof;",
+ "&circ;",
+ "&tilde;",
+ "&Alpha;",
+ "&Beta;",
+ "&Gamma;",
+ "&Delta;",
+ "&Epsilon;",
+ "&Zeta;",
+ "&Eta;",
+ "&Theta;",
+ "&Iota;",
+ "&Kappa;",
+ "&Lambda;",
+ "&Mu;",
+ "&Nu;",
+ "&Xi;",
+ "&Omicron;",
+ "&Pi;",
+ "&Rho;",
+ "&Sigma;",
+ "&Tau;",
+ "&Upsilon;",
+ "&Phi;",
+ "&Chi;",
+ "&Psi;",
+ "&Omega;",
+ "&alpha;",
+ "&beta;",
+ "&gamma;",
+ "&delta;",
+ "&epsilon;",
+ "&zeta;",
+ "&eta;",
+ "&theta;",
+ "&iota;",
+ "&kappa;",
+ "&lambda;",
+ "&mu;",
+ "&nu;",
+ "&xi;",
+ "&omicron;",
+ "&pi;",
+ "&rho;",
+ "&sigmaf;",
+ "&sigma;",
+ "&tau;",
+ "&upsilon;",
+ "&phi;",
+ "&chi;",
+ "&psi;",
+ "&omega;",
+ "&thetasym;",
+ "&upsih;",
+ "&piv;",
+ "&ensp;",
+ "&emsp;",
+ "&thinsp;",
+ "&zwnj;",
+ "&zwj;",
+ "&lrm;",
+ "&rlm;",
+ "&ndash;",
+ "&mdash;",
+ "&lsquo;",
+ "&rsquo;",
+ "&sbquo;",
+ "&ldquo;",
+ "&rdquo;",
+ "&bdquo;",
+ "&dagger;",
+ "&Dagger;",
+ "&bull;",
+ "&hellip;",
+ "&permil;",
+ "&prime;",
+ "&Prime;",
+ "&lsaquo;",
+ "&rsaquo;",
+ "&oline;",
+ "&frasl;",
+ "&euro;",
+ "&image;",
+ "&weierp;",
+ "&real;",
+ "&trade;",
+ "&alefsym;",
+ "&larr;",
+ "&uarr;",
+ "&rarr;",
+ "&darr;",
+ "&harr;",
+ "&crarr;",
+ "&lArr;",
+ "&uArr;",
+ "&rArr;",
+ "&dArr;",
+ "&hArr;",
+ "&forall;",
+ "&part;",
+ "&exist;",
+ "&empty;",
+ "&nabla;",
+ "&isin;",
+ "&notin;",
+ "&ni;",
+ "&prod;",
+ "&sum;",
+ "&minus;",
+ "&lowast;",
+ "&radic;",
+ "&prop;",
+ "&infin;",
+ "&ang;",
+ "&and;",
+ "&or;",
+ "&cap;",
+ "&cup;",
+ "&int;",
+ "&there4;",
+ "&sim;",
+ "&cong;",
+ "&asymp;",
+ "&ne;",
+ "&equiv;",
+ "&le;",
+ "&ge;",
+ "&sub;",
+ "&sup;",
+ "&nsub;",
+ "&sube;",
+ "&supe;",
+ "&oplus;",
+ "&otimes;",
+ "&perp;",
+ "&sdot;",
+ "&lceil;",
+ "&rceil;",
+ "&lfloor;",
+ "&rfloor;",
+ "&lang;",
+ "&rang;",
+ "&loz;",
+ "&spades;",
+ "&clubs;",
+ "&hearts;",
+ "&diams;",
+);
+
+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--
+&quot; U+00022
+&amp; U+00026
+&#039; U+00027
+&lt; U+0003C
+&gt; U+0003E
+&nbsp; U+000A0
+&iexcl; U+000A1
+&cent; U+000A2
+&pound; U+000A3
+&curren; U+000A4
+&yen; U+000A5
+&brvbar; U+000A6
+&sect; U+000A7
+&uml; U+000A8
+&copy; U+000A9
+&ordf; U+000AA
+&laquo; U+000AB
+&not; U+000AC
+&shy; U+000AD
+&reg; U+000AE
+&macr; U+000AF
+&deg; U+000B0
+&plusmn; U+000B1
+&sup2; U+000B2
+&sup3; U+000B3
+&acute; U+000B4
+&micro; U+000B5
+&para; U+000B6
+&middot; U+000B7
+&cedil; U+000B8
+&sup1; U+000B9
+&ordm; U+000BA
+&raquo; U+000BB
+&frac14; U+000BC
+&frac12; U+000BD
+&frac34; U+000BE
+&iquest; U+000BF
+&Agrave; U+000C0
+&Aacute; U+000C1
+&Acirc; U+000C2
+&Atilde; U+000C3
+&Auml; U+000C4
+&Aring; U+000C5
+&AElig; U+000C6
+&Ccedil; U+000C7
+&Egrave; U+000C8
+&Eacute; U+000C9
+&Ecirc; U+000CA
+&Euml; U+000CB
+&Igrave; U+000CC
+&Iacute; U+000CD
+&Icirc; U+000CE
+&Iuml; U+000CF
+&ETH; U+000D0
+&Ntilde; U+000D1
+&Ograve; U+000D2
+&Oacute; U+000D3
+&Ocirc; U+000D4
+&Otilde; U+000D5
+&Ouml; U+000D6
+&times; U+000D7
+&Oslash; U+000D8
+&Ugrave; U+000D9
+&Uacute; U+000DA
+&Ucirc; U+000DB
+&Uuml; U+000DC
+&Yacute; U+000DD
+&THORN; U+000DE
+&szlig; U+000DF
+&agrave; U+000E0
+&aacute; U+000E1
+&acirc; U+000E2
+&atilde; U+000E3
+&auml; U+000E4
+&aring; U+000E5
+&aelig; U+000E6
+&ccedil; U+000E7
+&egrave; U+000E8
+&eacute; U+000E9
+&ecirc; U+000EA
+&euml; U+000EB
+&igrave; U+000EC
+&iacute; U+000ED
+&icirc; U+000EE
+&iuml; U+000EF
+&eth; U+000F0
+&ntilde; U+000F1
+&ograve; U+000F2
+&oacute; U+000F3
+&ocirc; U+000F4
+&otilde; U+000F5
+&ouml; U+000F6
+&divide; U+000F7
+&oslash; U+000F8
+&ugrave; U+000F9
+&uacute; U+000FA
+&ucirc; U+000FB
+&uuml; U+000FC
+&yacute; U+000FD
+&thorn; U+000FE
+&yuml; U+000FF
+&OElig; U+00152
+&oelig; U+00153
+&Scaron; U+00160
+&scaron; U+00161
+&Yuml; U+00178
+&fnof; U+00192
+&circ; U+002C6
+&tilde; U+002DC
+&Alpha; U+00391
+&Beta; U+00392
+&Gamma; U+00393
+&Delta; U+00394
+&Epsilon; U+00395
+&Zeta; U+00396
+&Eta; U+00397
+&Theta; U+00398
+&Iota; U+00399
+&Kappa; U+0039A
+&Lambda; U+0039B
+&Mu; U+0039C
+&Nu; U+0039D
+&Xi; U+0039E
+&Omicron; U+0039F
+&Pi; U+003A0
+&Rho; U+003A1
+&Sigma; U+003A3
+&Tau; U+003A4
+&Upsilon; U+003A5
+&Phi; U+003A6
+&Chi; U+003A7
+&Psi; U+003A8
+&Omega; U+003A9
+&alpha; U+003B1
+&beta; U+003B2
+&gamma; U+003B3
+&delta; U+003B4
+&epsilon; U+003B5
+&zeta; U+003B6
+&eta; U+003B7
+&theta; U+003B8
+&iota; U+003B9
+&kappa; U+003BA
+&lambda; U+003BB
+&mu; U+003BC
+&nu; U+003BD
+&xi; U+003BE
+&omicron; U+003BF
+&pi; U+003C0
+&rho; U+003C1
+&sigmaf; U+003C2
+&sigma; U+003C3
+&tau; U+003C4
+&upsilon; U+003C5
+&phi; U+003C6
+&chi; U+003C7
+&psi; U+003C8
+&omega; U+003C9
+&thetasym; U+003D1
+&upsih; U+003D2
+&piv; U+003D6
+&ensp; U+02002
+&emsp; U+02003
+&thinsp; U+02009
+&zwnj; U+0200C
+&zwj; U+0200D
+&lrm; U+0200E
+&rlm; U+0200F
+&ndash; U+02013
+&mdash; U+02014
+&lsquo; U+02018
+&rsquo; U+02019
+&sbquo; U+0201A
+&ldquo; U+0201C
+&rdquo; U+0201D
+&bdquo; U+0201E
+&dagger; U+02020
+&Dagger; U+02021
+&bull; U+02022
+&hellip; U+02026
+&permil; U+02030
+&prime; U+02032
+&Prime; U+02033
+&lsaquo; U+02039
+&rsaquo; U+0203A
+&oline; U+0203E
+&frasl; U+02044
+&euro; U+020AC
+&image; U+02111
+&weierp; U+02118
+&real; U+0211C
+&trade; U+02122
+&alefsym; U+02135
+&larr; U+02190
+&uarr; U+02191
+&rarr; U+02192
+&darr; U+02193
+&harr; U+02194
+&crarr; U+021B5
+&lArr; U+021D0
+&uArr; U+021D1
+&rArr; U+021D2
+&dArr; U+021D3
+&hArr; U+021D4
+&forall; U+02200
+&part; U+02202
+&exist; U+02203
+&empty; U+02205
+&nabla; U+02207
+&isin; U+02208
+&notin; U+02209
+&ni; U+0220B
+&prod; U+0220F
+&sum; U+02211
+&minus; U+02212
+&lowast; U+02217
+&radic; U+0221A
+&prop; U+0221D
+&infin; U+0221E
+&ang; U+02220
+&and; U+02227
+&or; U+02228
+&cap; U+02229
+&cup; U+0222A
+&int; U+0222B
+&there4; U+02234
+&sim; U+0223C
+&cong; U+02245
+&asymp; U+02248
+&ne; U+02260
+&equiv; U+02261
+&le; U+02264
+&ge; U+02265
+&sub; U+02282
+&sup; U+02283
+&nsub; U+02284
+&sube; U+02286
+&supe; U+02287
+&oplus; U+02295
+&otimes; U+02297
+&perp; U+022A5
+&sdot; U+022C5
+&lceil; U+02308
+&rceil; U+02309
+&lfloor; U+0230A
+&rfloor; U+0230B
+&lang; U+02329
+&rang; U+0232A
+&loz; U+025CA
+&spades; U+02660
+&clubs; U+02663
+&hearts; U+02665
+&diams; 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