aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorRoland McGrath <roland@hack.frob.com>2015-05-13 12:34:11 -0700
committerRoland McGrath <roland@hack.frob.com>2015-05-13 12:34:11 -0700
commitd2ee815ad677bba720c4f0275c1d6065f5809e7a (patch)
treebdf787aecee9e951a71ce1d852e26b4412743803 /include
parent83c10893259916152d277327fa37d8f70bb4d4c2 (diff)
downloadglibc-d2ee815ad677bba720c4f0275c1d6065f5809e7a.zip
glibc-d2ee815ad677bba720c4f0275c1d6065f5809e7a.tar.gz
glibc-d2ee815ad677bba720c4f0275c1d6065f5809e7a.tar.bz2
Refactor scandir/scandirat to use common tail.
Diffstat (limited to 'include')
-rw-r--r--include/dirent.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/include/dirent.h b/include/dirent.h
index c50bd23..258f2d0 100644
--- a/include/dirent.h
+++ b/include/dirent.h
@@ -49,6 +49,26 @@ extern DIR *__alloc_dir (int fd, bool close_fd, int flags,
extern __typeof (rewinddir) __rewinddir;
extern void __scandir_cancel_handler (void *arg) attribute_hidden;
+extern int __scandir_tail (DIR *dp,
+ struct dirent ***namelist,
+ int (*select) (const struct dirent *),
+ int (*cmp) (const struct dirent **,
+ const struct dirent **))
+ internal_function attribute_hidden;
+# ifdef _DIRENT_MATCHES_DIRENT64
+# define __scandir64_tail (dp, namelist, select, cmp) \
+ __scandir_tail (dp, (struct dirent ***) (namelist), \
+ (int (*) (const struct dirent *)) (select), \
+ (int (*) (const struct dirent **, \
+ const struct dirent **)) (cmp))
+# else
+extern int __scandir64_tail (DIR *dp,
+ struct dirent64 ***namelist,
+ int (*select) (const struct dirent64 *),
+ int (*cmp) (const struct dirent64 **,
+ const struct dirent64 **))
+ internal_function attribute_hidden;
+# endif
libc_hidden_proto (__rewinddir)
extern __typeof (scandirat) __scandirat;