diff options
-rw-r--r-- | libc/sysdeps/linux/common/getdents.c | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/libc/sysdeps/linux/common/getdents.c b/libc/sysdeps/linux/common/getdents.c index 940532da2..20d79868c 100644 --- a/libc/sysdeps/linux/common/getdents.c +++ b/libc/sysdeps/linux/common/getdents.c @@ -27,7 +27,7 @@ #include <sysdep.h> -#include <linux/posix_types.h> +#include <bits/posix_types.h> #define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER) @@ -37,11 +37,16 @@ extern int _getdents __P ((int fd, char *buf, size_t nbytes)); /* For Linux we need a special version of this file since the definition of `struct dirent' is not the same for the kernel and the libc. There is one additional field which might be introduced - in the kernel structure in the future. + in the kernel structure in the future. Here is a copy of the kernel + struct dirent... */ -#define dirent kernel_dirent -#include <linux/dirent.h> -#undef dirent +struct kernel_dirent { + long d_ino; + __kernel_off_t d_off; + unsigned short d_reclen; + char d_name[256]; /* We must not include limits.h! */ +}; + #ifdef GETDENTS64 |