aboutsummaryrefslogtreecommitdiff
path: root/libjava/include
diff options
context:
space:
mode:
authorDavid Daney <ddaney@avtrex.com>2007-03-23 00:06:41 +0000
committerDavid Daney <daney@gcc.gnu.org>2007-03-23 00:06:41 +0000
commit46ecc2bc5c8455615f9739847277cbc5fe746c25 (patch)
treec1ef9bb4fb3b4432ae7bce87707fc879e3e8af77 /libjava/include
parent92ef5cf99970d490ebdd508c774b86bd4a821887 (diff)
downloadgcc-46ecc2bc5c8455615f9739847277cbc5fe746c25.zip
gcc-46ecc2bc5c8455615f9739847277cbc5fe746c25.tar.gz
gcc-46ecc2bc5c8455615f9739847277cbc5fe746c25.tar.bz2
re PR libgcj/31228 (Race condition between setting close-on-exec and Runtime.exec())
PR libgcj/31228 * configure.ac: Add checks for getrlimit and sys/resource.h. * include/posix.h (_Jv_platform_close_on_exec): Remove. * include/config.h.in: Regenerate. * configure: Regenerate. * gnu/java/nio/channels/natFileChannelPosix.cc (open): Remove call to _Jv_platform_close_on_exec; * gnu/java/net/natPlainSocketImplPosix.cc (create): Likewise. (accept): Likewise. * gnu/java/net/natPlainDatagramSocketImplPosix.cc (create):Likewise. * java/lang/natPosixProcess.cc: Include sys/resource.h. (nativeSpawn): Close all file descriptors. Don't set FD_CLOEXEC on pipes. From-SVN: r123138
Diffstat (limited to 'libjava/include')
-rw-r--r--libjava/include/config.h.in6
-rw-r--r--libjava/include/posix.h9
2 files changed, 6 insertions, 9 deletions
diff --git a/libjava/include/config.h.in b/libjava/include/config.h.in
index 2c025a2..f0919e2 100644
--- a/libjava/include/config.h.in
+++ b/libjava/include/config.h.in
@@ -127,6 +127,9 @@
/* Define to 1 if you have the `getpwuid_r' function. */
#undef HAVE_GETPWUID_R
+/* Define to 1 if you have the `getrlimit' function. */
+#undef HAVE_GETRLIMIT
+
/* Define to 1 if you have the `gettimeofday' function. */
#undef HAVE_GETTIMEOFDAY
@@ -316,6 +319,9 @@
/* Define to 1 if you have the <sys/ioctl.h> header file. */
#undef HAVE_SYS_IOCTL_H
+/* Define to 1 if you have the <sys/resource.h> header file. */
+#undef HAVE_SYS_RESOURCE_H
+
/* Define to 1 if you have the <sys/rw_lock.h> header file. */
#undef HAVE_SYS_RW_LOCK_H
diff --git a/libjava/include/posix.h b/libjava/include/posix.h
index ee836e0..5f522a3 100644
--- a/libjava/include/posix.h
+++ b/libjava/include/posix.h
@@ -98,15 +98,6 @@ extern jlong _Jv_platform_nanotime ();
extern void _Jv_platform_initialize (void);
extern void _Jv_platform_initProperties (java::util::Properties*);
-inline void
-_Jv_platform_close_on_exec (jint fd)
-{
- // Ignore errors.
- ::fcntl (fd, F_SETFD, FD_CLOEXEC);
-}
-
-#undef fcntl
-
#ifdef JV_HASH_SYNCHRONIZATION
#ifndef HAVE_USLEEP_DECL
extern "C" int usleep (useconds_t useconds);