summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux/i386/bits
diff options
context:
space:
mode:
authorManuel Novoa III <mjn3@codepoet.org>2001-06-25 20:26:29 +0000
committerManuel Novoa III <mjn3@codepoet.org>2001-06-25 20:26:29 +0000
commit96b91643c34a145a2e565247ca7594c1f77fb011 (patch)
treebd7eca717f2d473cf3bcdd7bffff62e082b65f72 /libc/sysdeps/linux/i386/bits
parent130ddae1735c638bddd24b3bd3e09e64c434f3c6 (diff)
Remove simulated d_type support for getdents and the dirent struct, and use
the straight getdents syscall instead of the wrapper (which leaked memory).
Diffstat (limited to 'libc/sysdeps/linux/i386/bits')
-rw-r--r--libc/sysdeps/linux/i386/bits/dirent.h13
1 files changed, 11 insertions, 2 deletions
diff --git a/libc/sysdeps/linux/i386/bits/dirent.h b/libc/sysdeps/linux/i386/bits/dirent.h
index 30e020328..1754c7cbe 100644
--- a/libc/sysdeps/linux/i386/bits/dirent.h
+++ b/libc/sysdeps/linux/i386/bits/dirent.h
@@ -16,6 +16,16 @@
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
+/*
+ * June 25, 2001
+ *
+ * Removed d_type support for dirent and undefined _DIRENT_HAVE_D_TYPE;
+ * i.e. match the kernel structs and avoid any translation for now.
+ * Note: glibc fakes d_type for the dirent case.
+ * Note: dirent64 still has the d_type field.
+ */
+
+
#ifndef _DIRENT_H
# error "Never use <bits/dirent.h> directly; include <dirent.h> instead."
#endif
@@ -30,7 +40,6 @@ struct dirent
__off64_t d_off;
#endif
unsigned short int d_reclen;
- unsigned char d_type;
char d_name[256]; /* We must not include limits.h! */
};
@@ -50,4 +59,4 @@ struct dirent64
#undef _DIRENT_HAVE_D_NAMLEN
#define _DIRENT_HAVE_D_RECLEN
#define _DIRENT_HAVE_D_OFF
-#define _DIRENT_HAVE_D_TYPE
+#undef _DIRENT_HAVE_D_TYPE