ftw.h 867 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. #ifndef _FTW_H
  2. #define _FTW_H
  3. #ifdef __cplusplus
  4. extern "C" {
  5. #endif
  6. #include <features.h>
  7. /* Normally we do not nest header includes. However useless bloat
  8. * like ftw may be treated as a special case. Otherwise we would
  9. * have to deal with duplicating all the stat.h mess. */
  10. #include <sys/stat.h>
  11. #define FTW_F 1
  12. #define FTW_D 2
  13. #define FTW_DNR 3
  14. #define FTW_NS 4
  15. #define FTW_SL 5
  16. #define FTW_DP 6
  17. #define FTW_SLN 7
  18. #define FTW_PHYS 1
  19. #define FTW_MOUNT 2
  20. #define FTW_CHDIR 4
  21. #define FTW_DEPTH 8
  22. struct FTW
  23. {
  24. int base;
  25. int level;
  26. };
  27. int ftw(const char *, int (*)(const char *, const struct stat *, int), int);
  28. int nftw(const char *, int (*)(const char *, const struct stat *, int, struct FTW *), int, int);
  29. #if defined(_LARGEFILE64_SOURCE) || defined(_GNU_SOURCE)
  30. #define ftw64 ftw
  31. #define nftw64 nftw
  32. #endif
  33. #ifdef __cplusplus
  34. }
  35. #endif
  36. #endif