Introduction
Introduction Statistics Contact Development Disclaimer Help
applied Matthew's dirread patch, thanks - 9base - revived minimalist port of Pl…
git clone git://git.suckless.org/9base
Log
Files
Refs
README
LICENSE
---
commit d2a6d3b9d5cc69cfb0fe09604217280d4093f21c
parent 0ebf0433351f6e6fd61c5bfc25d5d4bd685f7b3a
Author: [email protected] <unknown>
Date: Wed, 7 Mar 2012 21:34:14 +0100
applied Matthew's dirread patch, thanks
Diffstat:
M lib9/dirread.c | 23 ++++++++++-------------
1 file changed, 10 insertions(+), 13 deletions(-)
---
diff --git a/lib9/dirread.c b/lib9/dirread.c
@@ -3,26 +3,23 @@
#include <libc.h>
#include <sys/stat.h>
#include <dirent.h>
-#if defined(__linux__) && (__UCLIBC__)
+
+#if defined (__UCLIBC__)
# include <sys/syscall.h>
+# if defined (__USE_LARGEFILE64)
+# define getdents SYS_getdents64
+# else
+# define getdents SYS_getdents
+# endif
#endif
extern int _p9dir(struct stat*, struct stat*, char*, Dir*, char**, char*);
#if defined(__linux__)
-# if defined(__UCLIBC__)
-/* uClibc doesn't provide getdirentries(2), getdents(2) isn't wrapped
- * by uClibc either. So we are using getdents(2) syscall directly.
- */
-# warning "uClibc based system are using getdents(2) syscall directly."
+# if defined (__UCLIBC__)
static int
-mygetdents(int fd, struct dirent *buf, int n)
-{
-# if defined(__USE_LARGEFILE64)
- return syscall(SYS_getdents64, fd, (void*)buf, n);
-# else
- return syscall(SYS_getdents, fd, (void*)buf, n);
-# endif
+mygetdents(int fd, struct dirent *buf, int n) {
+ return syscall (getdents, fd, (void*) buf, n);
}
# else
static int
You are viewing proxied material from suckless.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.