* callback.c: Include "xmalloc.h".
[deliverable/binutils-gdb.git] / readline / posixdir.h
CommitLineData
d60d9f65
SS
1/* posixdir.h -- Posix directory reading includes and defines. */
2
3/* Copyright (C) 1987,1991 Free Software Foundation, Inc.
4
5 This file is part of GNU Bash, the Bourne Again SHell.
6
7 Bash is free software; you can redistribute it and/or modify it
8 under the terms of the GNU General Public License as published by
1b17e766 9 the Free Software Foundation; either version 2, or (at your option)
d60d9f65
SS
10 any later version.
11
12 Bash is distributed in the hope that it will be useful, but WITHOUT
13 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
14 or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
15 License for more details.
16
17 You should have received a copy of the GNU General Public License
18 along with Bash; see the file COPYING. If not, write to the Free
1b17e766 19 Software Foundation, 59 Temple Place, Suite 330, Boston, MA 02111 USA. */
d60d9f65
SS
20
21/* This file should be included instead of <dirent.h> or <sys/dir.h>. */
22
23#if !defined (_POSIXDIR_H_)
24#define _POSIXDIR_H_
25
26#if defined (HAVE_DIRENT_H)
27# include <dirent.h>
5bdf8622
DJ
28# if defined (HAVE_STRUCT_DIRENT_D_NAMLEN)
29# define D_NAMLEN(d) ((d)->d_namlen)
30# else
31# define D_NAMLEN(d) (strlen ((d)->d_name))
32# endif /* !HAVE_STRUCT_DIRENT_D_NAMLEN */
d60d9f65
SS
33#else
34# if defined (HAVE_SYS_NDIR_H)
35# include <sys/ndir.h>
36# endif
37# if defined (HAVE_SYS_DIR_H)
38# include <sys/dir.h>
39# endif
40# if defined (HAVE_NDIR_H)
41# include <ndir.h>
42# endif
43# if !defined (dirent)
44# define dirent direct
45# endif /* !dirent */
46# define D_NAMLEN(d) ((d)->d_namlen)
47#endif /* !HAVE_DIRENT_H */
48
5bdf8622 49#if defined (HAVE_STRUCT_DIRENT_D_INO) && !defined (HAVE_STRUCT_DIRENT_D_FILENO)
d60d9f65
SS
50# define d_fileno d_ino
51#endif
52
5bdf8622 53#if defined (_POSIX_SOURCE) && (!defined (HAVE_STRUCT_DIRENT_D_INO) || defined (BROKEN_DIRENT_D_INO))
9255ee31
EZ
54/* Posix does not require that the d_ino field be present, and some
55 systems do not provide it. */
56# define REAL_DIR_ENTRY(dp) 1
57#else
58# define REAL_DIR_ENTRY(dp) (dp->d_ino != 0)
59#endif /* _POSIX_SOURCE */
60
d60d9f65 61#endif /* !_POSIXDIR_H_ */
This page took 0.306375 seconds and 4 git commands to generate.