[php-src] PHP-8.5: ext/standard: Skip proc_open descriptor 0 tests without /proc/self/fd symlinks
| From: | Jorg Sowa | Date: | Sat, 24 Oct 2026 19:25:23 +0000 |
| Subject: | [php-src] PHP-8.5: ext/standard: Skip proc_open descriptor 0 tests without /proc/self/fd symlinks | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-142694@lists.php.net to get a copy of this message | ||
Author: Jorg Sowa (jorgsowa)
Date: 2026-10-24T21:20:15+02:00
Commit: https://github.com/php/php-src/commit/0ddabc30e826393e5d9467bc77a479040be50ba7
Raw diff: https://github.com/php/php-src/commit/0ddabc30e826393e5d9467bc77a479040be50ba7.diff
ext/standard: Skip proc_open descriptor 0 tests without /proc/self/fd symlinks
On Solaris/illumos /proc/self/fd entries are not symlinks, so readlink()
fails with EINVAL.
Co-authored-by: David Carlier <devnexen@gmail.com>
Closes GH-24571.
Changed paths:
M ext/standard/tests/general_functions/proc_open_descriptor_0_setup_failure.phpt
M ext/standard/tests/general_functions/proc_open_socket_descriptor_0_setup_failure.phpt
Diff:
diff --git a/ext/standard/tests/general_functions/proc_open_descriptor_0_setup_failure.phpt
b/ext/standard/tests/general_functions/proc_open_descriptor_0_setup_failure.phpt
index ea654b0f497a..0aca62b2903a 100644
--- a/ext/standard/tests/general_functions/proc_open_descriptor_0_setup_failure.phpt
+++ b/ext/standard/tests/general_functions/proc_open_descriptor_0_setup_failure.phpt
@@ -5,8 +5,8 @@ proc_open() closes descriptor 0 when setup fails after pipe allocation
if (!function_exists("proc_open")) {
die("skip proc_open() unavailable");
}
-if (!@is_dir("/proc/self/fd")) {
- die("skip requires /proc/self/fd");
+if (!@is_link("/proc/self/fd/1")) {
+ die("skip requires /proc/self/fd symlinks");
}
?>
--FILE--
diff --git a/ext/standard/tests/general_functions/proc_open_socket_descriptor_0_setup_failure.phpt
b/ext/standard/tests/general_functions/proc_open_socket_descriptor_0_setup_failure.phpt
index 88e4eee1b20b..f2b30c89309c 100644
--- a/ext/standard/tests/general_functions/proc_open_socket_descriptor_0_setup_failure.phpt
+++ b/ext/standard/tests/general_functions/proc_open_socket_descriptor_0_setup_failure.phpt
@@ -5,8 +5,8 @@ proc_open() closes descriptor 0 when setup fails after socket allocation
if (!function_exists("proc_open")) {
die("skip proc_open() unavailable");
}
-if (!@is_dir("/proc/self/fd")) {
- die("skip requires /proc/self/fd");
+if (!@is_link("/proc/self/fd/1")) {
+ die("skip requires /proc/self/fd symlinks");
}
?>
--FILE--