/
vshmidt
/
php
Обзор
Документация
Войти
/
vshmidt
/
php
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
sapi/cli/tests/bug74600.phpt
39 строк
929 B
Niels Dossche
Fix GH-10489: run-tests.php does not escape path when building cmd (#10560)
25 фев 2023, 17:02
Не верифицирован
25 фев 2023, 17:02
dcc3255
Код
Авторство
О чём код?
--TEST-- Bug #74600 (crash (SIGSEGV) in _zend_hash_add_or_update_i) --SKIPIF-- <?php if (!getenv("TEST_PHP_EXECUTABLE")) die("skip TEST_PHP_EXECUTABLE not set"); if (substr(PHP_OS, 0, 3) == "WIN") die("skip non windows test"); ?> --FILE-- <?php $php = getenv("TEST_PHP_EXECUTABLE_ESCAPED"); $ini_file = __DIR__ . "/bug74600.ini"; $ini_file_escaped = escapeshellarg($ini_file); file_put_contents($ini_file, <<<INI [PHP]\n;\rs=\000\000=\n;\r[PATH\000]\000\376 =\n INI ); $desc = array( 0 => array("pipe", "r"), 1 => array("pipe", "w"), 2 => array("pipe", "w"), ); $pipes = array(); $proc = proc_open("$php -c $ini_file_escaped -r 'echo \"okey\";'", $desc, $pipes); if (!$proc) { exit(1); } var_dump(stream_get_contents($pipes[1])); var_dump(stream_get_contents($pipes[2])); proc_terminate($proc); proc_close($proc); ?> --CLEAN-- <?php unlink(__DIR__ . "/bug74600.ini"); ?> --EXPECT-- string(4) "okey" string(0) ""