summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorwrowe <wrowe@13f79535-47bb-0310-9956-ffa450edef68>2007-10-01 23:28:12 +0000
committerwrowe <wrowe@13f79535-47bb-0310-9956-ffa450edef68>2007-10-01 23:28:12 +0000
commit7c1338eebe954f3b8664e689281f15508ee2c694 (patch)
tree42be79989b24ff05d6e94ddcca9b1211cf8f3c58 /include
parent9c412087c50c92ad93d145d2883d2a902e3262b3 (diff)
downloadlibapr-7c1338eebe954f3b8664e689281f15508ee2c694.tar.gz
Backport r580484; the patchset to teach APR dup2 to hook up stdio
to MSVCRT on Win32, and to provide a back-compatibility hook-up for users who positively, absolutely need INVALID_HANDLE_VALUES. git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/0.9.x@581110 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'include')
-rw-r--r--include/apr_thread_proc.h9
-rw-r--r--include/arch/win32/apr_arch_file_io.h4
2 files changed, 13 insertions, 0 deletions
diff --git a/include/apr_thread_proc.h b/include/apr_thread_proc.h
index be586040e..6d1c0be14 100644
--- a/include/apr_thread_proc.h
+++ b/include/apr_thread_proc.h
@@ -87,6 +87,15 @@ typedef enum {
/** @see apr_procattr_io_set */
#define APR_CHILD_BLOCK 4
+/** @see apr_procattr_io_set
+ * @note introduced strictly for Win32 to apr revision 1.2.12 (to restore
+ * the non-portable default behavior of 1.2.9 and prior versions on Win32).
+ * This becomes portable to all platforms effective revision 1.3.0, ensuring
+ * the standard files specified in the call to apr_procattr_io_set are not
+ * open in the created process (on Win32 as INVALID_HANDLE_VALUEs).
+ */
+#define APR_NO_FILE 8
+
/** @see apr_procattr_limit_set */
#define APR_LIMIT_CPU 0
/** @see apr_procattr_limit_set */
diff --git a/include/arch/win32/apr_arch_file_io.h b/include/arch/win32/apr_arch_file_io.h
index bcb9d0823..dc3f442a1 100644
--- a/include/arch/win32/apr_arch_file_io.h
+++ b/include/arch/win32/apr_arch_file_io.h
@@ -98,6 +98,10 @@ void *res_name_from_filename(const char *file, int global, apr_pool_t *pool);
#define APR_READCONTROL 0x00400000 /* Read the file's owner/perms */
#define APR_WRITECONTROL 0x00800000 /* Modifythe file's owner/perms */
#define APR_WRITEATTRS 0x01000000 /* Modify the file's attributes */
+#define APR_STDIN_FLAG 0x02000000 /* Obtained via apr_file_open_stdin() */
+#define APR_STDOUT_FLAG 0x04000000 /* Obtained via apr_file_open_stdout() */
+#define APR_STDERR_FLAG 0x06000000 /* Obtained via apr_file_open_stderr() */
+#define APR_STD_FLAGS (APR_STDIN_FLAG | APR_STDOUT_FLAG | APR_STDERR_FLAG)
/* Entries missing from the MSVC 5.0 Win32 SDK:
*/