home *** CD-ROM | disk | FTP | other *** search
/ Aminet 10 / aminetcdnumber101996.iso / Aminet / util / gnu / groff_src.lha / groff-1.10src / indxbib / dirnamemax.c next >
C/C++ Source or Header  |  1992-09-05  |  885b  |  50 lines

  1. /* dir_name_max(dir) does the same as pathconf(dir, _PC_NAME_MAX) */
  2.  
  3. #include <sys/types.h>
  4.  
  5. #ifdef HAVE_UNISTD_H
  6. #include <unistd.h>
  7. #endif /* HAVE_UNISTD_H */
  8.  
  9. #ifdef _POSIX_VERSION
  10.  
  11. long dir_name_max(dir)
  12.      char *dir;
  13. {
  14.   return pathconf(dir, _PC_NAME_MAX);
  15. }
  16.  
  17. #else /* not _POSIX_VERSION */
  18.  
  19. #ifdef HAVE_LIMITS_H
  20. #include <limits.h>
  21. #endif /* HAVE_LIMITS_H */
  22.  
  23. #ifdef HAVE_DIRENT_H
  24. #include <dirent.h>
  25. #else /* not HAVE_DIRENT_H */
  26. #ifdef HAVE_SYS_DIR_H
  27. #include <sys/dir.h>
  28. #endif /* HAVE_SYS_DIR_H */
  29. #endif /* not HAVE_DIRENT_H */
  30.  
  31. #ifndef NAME_MAX
  32. #ifdef MAXNAMLEN
  33. #define NAME_MAX MAXNAMLEN
  34. #else /* !MAXNAMLEN */
  35. #ifdef MAXNAMELEN
  36. #define NAME_MAX MAXNAMELEN
  37. #else /* !MAXNAMELEN */
  38. #define NAME_MAX 14
  39. #endif /* !MAXNAMELEN */
  40. #endif /* !MAXNAMLEN */
  41. #endif /* !NAME_MAX */
  42.  
  43. long dir_name_max(dir)
  44.      char *dir;
  45. {
  46.   return NAME_MAX;
  47. }
  48.  
  49. #endif /* not _POSIX_VERSION */
  50.