aboutsummaryrefslogtreecommitdiff
path: root/libjava/java
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2008-02-20 19:09:09 +0000
committerTom Tromey <tromey@gcc.gnu.org>2008-02-20 19:09:09 +0000
commitc8910ef9e2bbec3bfcfaedcd5f79d7b40a7a79ad (patch)
tree71b52b3448e1cbe7f7e4e3bfd7cc6141fcc30f2b /libjava/java
parent993ac7c7eff9ad66169977ba7f9e8eed241f107f (diff)
downloadgcc-c8910ef9e2bbec3bfcfaedcd5f79d7b40a7a79ad.zip
gcc-c8910ef9e2bbec3bfcfaedcd5f79d7b40a7a79ad.tar.gz
gcc-c8910ef9e2bbec3bfcfaedcd5f79d7b40a7a79ad.tar.bz2
re PR libgcj/24170 (libjava natFilePosix.cc seems to have a security problem)
PR libgcj/24170: * java/io/natFilePosix.cc (File::performList): Don't use readdir_r. * configure, include/config.h.in: Rebuilt. * configure.ac: Don't check for readdir_r. From-SVN: r132491
Diffstat (limited to 'libjava/java')
-rw-r--r--libjava/java/io/natFilePosix.cc8
1 files changed, 1 insertions, 7 deletions
diff --git a/libjava/java/io/natFilePosix.cc b/libjava/java/io/natFilePosix.cc
index ead2855..5b6ec84 100644
--- a/libjava/java/io/natFilePosix.cc
+++ b/libjava/java/io/natFilePosix.cc
@@ -1,6 +1,6 @@
// natFile.cc - Native part of File class for POSIX.
-/* Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2006
+/* Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2006, 2008
Free Software Foundation
This file is part of libgcj.
@@ -292,13 +292,7 @@ java::io::File::performList (java::io::FilenameFilter *filter,
java::util::ArrayList *list = new java::util::ArrayList ();
struct dirent *d;
-#if defined(HAVE_READDIR_R) && defined(_POSIX_PTHREAD_SEMANTICS)
- int name_max = pathconf (buf, _PC_NAME_MAX);
- char dbuf[sizeof (struct dirent) + name_max + 1];
- while (readdir_r (dir, (struct dirent *) dbuf, &d) == 0 && d != NULL)
-#else /* HAVE_READDIR_R */
while ((d = readdir (dir)) != NULL)
-#endif /* HAVE_READDIR_R */
{
// Omit "." and "..".
if (d->d_name[0] == '.'