summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSascha Schumann <sas@php.net>1999-07-18 15:53:50 +0000
committerSascha Schumann <sas@php.net>1999-07-18 15:53:50 +0000
commit99a2aa0f804e1ccbeb0fa15dc440506b1f15098e (patch)
treed6067d4fd6f5c77dfbb97a9b06f3f0987c1873b3
parent3b7d588f405e699dcdb6b305f834ee586daf5a30 (diff)
downloadphp-git-99a2aa0f804e1ccbeb0fa15dc440506b1f15098e.tar.gz
allow access to std{in,out,err} by using the php domain
-rw-r--r--main/fopen_wrappers.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/main/fopen_wrappers.c b/main/fopen_wrappers.c
index 8db27317bc..1660874a0a 100644
--- a/main/fopen_wrappers.c
+++ b/main/fopen_wrappers.c
@@ -603,6 +603,16 @@ static FILE *php3_fopen_url_wrapper(const char *path, char *mode, int options, i
free_url(resource);
*issock = 1;
return (fp);
+ } else if (!strncasecmp(path, "php://", 6)) {
+ const char *res = path + 6;
+
+ if (!strcasecmp(res, "stdin")) {
+ return fdopen(STDIN_FILENO, mode);
+ } else if (!strcasecmp(res, "stdout")) {
+ return fdopen(STDOUT_FILENO, mode);
+ } else if (!strcasecmp(res, "stderr")) {
+ return fdopen(STDERR_FILENO, mode);
+ }
} else if (!strncasecmp(path, "ftp://", 6)) {
resource = url_parse((char *) path);
if (resource == NULL) {