00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #if !defined (_POSIXDIR_H_)
00024 #define _POSIXDIR_H_
00025
00026 #if defined (HAVE_DIRENT_H)
00027 # include <dirent.h>
00028 # if defined (HAVE_STRUCT_DIRENT_D_NAMLEN)
00029 # define D_NAMLEN(d) ((d)->d_namlen)
00030 # else
00031 # define D_NAMLEN(d) (strlen ((d)->d_name))
00032 # endif
00033 #else
00034 # if defined (HAVE_SYS_NDIR_H)
00035 # include <sys/ndir.h>
00036 # endif
00037 # if defined (HAVE_SYS_DIR_H)
00038 # include <sys/dir.h>
00039 # endif
00040 # if defined (HAVE_NDIR_H)
00041 # include <ndir.h>
00042 # endif
00043 # if !defined (dirent)
00044 # define dirent direct
00045 # endif
00046 # define D_NAMLEN(d) ((d)->d_namlen)
00047 #endif
00048
00049 #if defined (HAVE_STRUCT_DIRENT_D_INO) && !defined (HAVE_STRUCT_DIRENT_D_FILENO)
00050 # define d_fileno d_ino
00051 #endif
00052
00053 #if defined (_POSIX_SOURCE) && (!defined (HAVE_STRUCT_DIRENT_D_INO) || defined (BROKEN_DIRENT_D_INO))
00054
00055
00056 # define REAL_DIR_ENTRY(dp) 1
00057 #else
00058 # define REAL_DIR_ENTRY(dp) (dp->d_ino != 0)
00059 #endif
00060
00061 #endif