aboutsummaryrefslogtreecommitdiff
path: root/libjava/gnu
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/gnu
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/gnu')
-rw-r--r--libjava/gnu/java/net/natPlainDatagramSocketImplPosix.cc2
-rw-r--r--libjava/gnu/java/net/natPlainSocketImplPosix.cc4
-rw-r--r--libjava/gnu/java/nio/channels/natFileChannelPosix.cc2
3 files changed, 0 insertions, 8 deletions
diff --git a/libjava/gnu/java/net/natPlainDatagramSocketImplPosix.cc b/libjava/gnu/java/net/natPlainDatagramSocketImplPosix.cc
index f7ffaa8..7cbf011 100644
--- a/libjava/gnu/java/net/natPlainDatagramSocketImplPosix.cc
+++ b/libjava/gnu/java/net/natPlainDatagramSocketImplPosix.cc
@@ -83,8 +83,6 @@ gnu::java::net::PlainDatagramSocketImpl::create ()
throw new ::java::net::SocketException (JvNewStringUTF (strerr));
}
- _Jv_platform_close_on_exec (sock);
-
// We use native_fd in place of fd here. From leaving fd null we avoid
// the double close problem in FileDescriptor.finalize.
native_fd = sock;
diff --git a/libjava/gnu/java/net/natPlainSocketImplPosix.cc b/libjava/gnu/java/net/natPlainSocketImplPosix.cc
index 9fc6196..d16f1d3 100644
--- a/libjava/gnu/java/net/natPlainSocketImplPosix.cc
+++ b/libjava/gnu/java/net/natPlainSocketImplPosix.cc
@@ -72,8 +72,6 @@ gnu::java::net::PlainSocketImpl::create (jboolean stream)
throw new ::java::io::IOException (JvNewStringUTF (strerr));
}
- _Jv_platform_close_on_exec (sock);
-
// We use native_fd in place of fd here. From leaving fd null we avoid
// the double close problem in FileDescriptor.finalize.
native_fd = sock;
@@ -285,8 +283,6 @@ gnu::java::net::PlainSocketImpl::accept (gnu::java::net::PlainSocketImpl *s)
if (new_socket < 0)
goto error;
- _Jv_platform_close_on_exec (new_socket);
-
jbyteArray raddr;
jint rport;
if (u.address.sin_family == AF_INET)
diff --git a/libjava/gnu/java/nio/channels/natFileChannelPosix.cc b/libjava/gnu/java/nio/channels/natFileChannelPosix.cc
index 4851403..52caf82 100644
--- a/libjava/gnu/java/nio/channels/natFileChannelPosix.cc
+++ b/libjava/gnu/java/nio/channels/natFileChannelPosix.cc
@@ -178,8 +178,6 @@ FileChannelImpl::open (jstring path, jint jflags)
throw new ::java::io::FileNotFoundException (msg->toString ());
}
- _Jv_platform_close_on_exec (fd);
-
return fd;
}