aboutsummaryrefslogtreecommitdiff
path: root/libjava/java/net
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/java/net')
-rw-r--r--libjava/java/net/natPlainDatagramSocketImpl.cc5
-rw-r--r--libjava/java/net/natPlainSocketImpl.cc6
2 files changed, 10 insertions, 1 deletions
diff --git a/libjava/java/net/natPlainDatagramSocketImpl.cc b/libjava/java/net/natPlainDatagramSocketImpl.cc
index 628ac62..81e17cc 100644
--- a/libjava/java/net/natPlainDatagramSocketImpl.cc
+++ b/libjava/java/net/natPlainDatagramSocketImpl.cc
@@ -1,4 +1,4 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation
+/* Copyright (C) 1999, 2000, 2002 Free Software Foundation
This file is part of libgcj.
@@ -185,6 +185,9 @@ java::net::PlainDatagramSocketImpl::create ()
char* strerr = strerror (errno);
throw new java::net::SocketException (JvNewStringUTF (strerr));
}
+
+ _Jv_platform_close_on_exec (sock);
+
fnum = sock;
fd = new java::io::FileDescriptor (sock);
}
diff --git a/libjava/java/net/natPlainSocketImpl.cc b/libjava/java/net/natPlainSocketImpl.cc
index 99eb80b..dd8d2ccd 100644
--- a/libjava/java/net/natPlainSocketImpl.cc
+++ b/libjava/java/net/natPlainSocketImpl.cc
@@ -232,6 +232,9 @@ java::net::PlainSocketImpl::create (jboolean stream)
char* strerr = strerror (errno);
throw new java::io::IOException (JvNewStringUTF (strerr));
}
+
+ _Jv_platform_close_on_exec (sock);
+
fnum = sock;
fd = new java::io::FileDescriptor (sock);
}
@@ -374,6 +377,9 @@ java::net::PlainSocketImpl::accept (java::net::PlainSocketImpl *s)
new_socket = _Jv_accept (fnum, (sockaddr*) &u, &addrlen);
if (new_socket < 0)
goto error;
+
+ _Jv_platform_close_on_exec (new_socket);
+
jbyteArray raddr;
jint rport;
if (u.address.sin_family == AF_INET)