summaryrefslogtreecommitdiff
path: root/lib/libc/dirent/readdir.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/libc/dirent/readdir.c')
-rw-r--r--lib/libc/dirent/readdir.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/lib/libc/dirent/readdir.c b/lib/libc/dirent/readdir.c
new file mode 100644
index 00000000..e4ac8cbd
--- /dev/null
+++ b/lib/libc/dirent/readdir.c
@@ -0,0 +1,16 @@
+#include <__dirent.h>
+#include <dirent.h>
+
+struct dirent *readdir(DIR *dirp)
+{
+ static struct dirent entry;
+ struct dirent *result;
+ int err;
+
+ err = readdir_r(dirp, &entry, &result);
+ if (err != 0 || result == NULL) {
+ return NULL;
+ }
+
+ return &entry;
+}