Upload Tizen:Base source
[external/eglibc.git] / sysdeps / unix / bsd / bsd4.4 / bits / dirent.h
1 /* Directory entry structure `struct dirent'.  4.4BSD version.
2    Copyright (C) 1996,97,98,2001 Free Software Foundation, Inc.
3    This file is part of the GNU C Library.
4
5    The GNU C Library is free software; you can redistribute it and/or
6    modify it under the terms of the GNU Lesser General Public
7    License as published by the Free Software Foundation; either
8    version 2.1 of the License, or (at your option) any later version.
9
10    The GNU C Library is distributed in the hope that it will be useful,
11    but WITHOUT ANY WARRANTY; without even the implied warranty of
12    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13    Lesser General Public License for more details.
14
15    You should have received a copy of the GNU Lesser General Public
16    License along with the GNU C Library; if not, write to the Free
17    Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
18    02111-1307 USA.  */
19
20 #ifndef _DIRENT_H
21 # error "Never use <bits/dirent.h> directly; include <dirent.h> instead."
22 #endif
23
24 struct dirent
25   {
26 #ifndef __USE_FILE_OFFSET64
27     __ino_t d_ino;              /* File serial number.  */
28 #else
29     __ino64_t d_ino;
30 #endif
31     unsigned short int d_reclen; /* Length of the whole `struct dirent'.  */
32     unsigned char d_type;       /* File type, possibly unknown.  */
33     unsigned char d_namlen;     /* Length of the file name.  */
34
35     /* Only this member is in the POSIX standard.  */
36     char d_name[1];             /* File name (actually longer).  */
37   };
38
39 #ifdef __USE_LARGEFILE64
40 struct dirent64
41   {
42     __ino64_t d_ino;
43     unsigned short int d_reclen;
44     unsigned char d_type;
45     unsigned char d_namlen;
46
47     char d_name[1];
48   };
49 #endif
50
51 #define d_fileno        d_ino   /* Backwards compatibility.  */
52
53 #define _DIRENT_HAVE_D_RECLEN 1
54 #define _DIRENT_HAVE_D_NAMLEN 1
55 #define _DIRENT_HAVE_D_TYPE 1