Fix a few problems in fopen and freopen
[platform/upstream/glibc.git] / include / dirent.h
1 #ifndef _DIRENT_H
2 # include <dirstream.h>
3 # include <dirent/dirent.h>
4 # include <sys/stat.h>
5 # include <stdbool.h>
6
7 /* Now define the internal interfaces.  */
8 extern DIR *__opendir (__const char *__name);
9 extern DIR *__fdopendir (int __fd);
10 extern int __closedir (DIR *__dirp);
11 extern struct dirent *__readdir (DIR *__dirp);
12 extern struct dirent64 *__readdir64 (DIR *__dirp);
13 extern int __readdir_r (DIR *__dirp, struct dirent *__entry,
14                         struct dirent **__result);
15 extern int __readdir64_r (DIR *__dirp, struct dirent64 *__entry,
16                           struct dirent64 **__result);
17 extern int __scandir64 (__const char * __dir,
18                         struct dirent64 *** __namelist,
19                         int (*__selector) (__const struct dirent64 *),
20                         int (*__cmp) (__const struct dirent64 **,
21                                       __const struct dirent64 **));
22 extern __ssize_t __getdents (int __fd, char *__buf, size_t __nbytes)
23      internal_function;
24 extern __ssize_t __getdents64 (int __fd, char *__buf, size_t __nbytes)
25      internal_function;
26 extern int __alphasort64 (const struct dirent64 **a, const struct dirent64 **b)
27      __attribute_pure__;
28 extern int __versionsort64 (const struct dirent64 **a,
29                             const struct dirent64 **b)
30      __attribute_pure__;
31 extern DIR *__alloc_dir (int fd, bool close_fd, int flags,
32                          const struct stat64 *statp)
33      internal_function;
34
35 libc_hidden_proto (rewinddir)
36
37 #endif