OSDN Git Service

Split out the definition of struct stat into the new arch
[uclinux-h8/uClibc.git] / libc / sysdeps / linux / powerpc / bits / kernel_stat.h
1 #ifndef _BITS_STAT_STRUCT_H
2 #define _BITS_STAT_STRUCT_H
3
4 /* This file provides whatever this particular arch's kernel thinks 
5  * struct stat should look like...  It turns out each arch has a 
6  * different opinion on the subject... */
7 #if __WORDSIZE == 64
8 struct stat {
9         unsigned long long st_dev;      /* Device.  */
10         unsigned long long st_ino;      /* File serial number.  */
11         unsigned int st_mode;           /* File mode.  */
12         unsigned int st_nlink;          /* Link count.  */
13         unsigned int st_uid;            /* User ID of the file's owner.  */
14         unsigned int st_gid;            /* Group ID of the file's group. */
15         unsigned long long st_rdev;     /* Device number, if device.  */
16         unsigned short int __pad2;
17         long long st_size;              /* Size of file, in bytes.  */
18         long st_blksize;                /* Optimal block size for I/O.  */
19         long long st_blocks;            /* Number 512-byte blocks allocated. */
20         long st_atime;                  /* Time of last access.  */
21         unsigned long int __unused1;
22         long st_mtime;                  /* Time of last modification.  */
23         unsigned long int __unused2;
24         long st_ctime;                  /* Time of last status change.  */
25         unsigned long int __unused3;
26         unsigned long int __unused4;
27         unsigned long int __unused5;
28 };
29 #else
30 struct stat {
31         unsigned int    st_dev;
32         unsigned int    st_ino;
33         unsigned int    st_mode;
34         unsigned short  st_nlink;
35         unsigned int    st_uid;
36         unsigned int    st_gid;
37         unsigned int    st_rdev;
38         unsigned long int       st_size;
39         unsigned long   st_blksize;
40         unsigned long   st_blocks;
41         unsigned long   st_atime;
42         unsigned long   __unused1;
43         unsigned long   st_mtime;
44         unsigned long   __unused2;
45         unsigned long   st_ctime;
46         unsigned long   __unused3;
47         unsigned long   __unused4;
48         unsigned long   __unused5;
49 };
50 #ifdef __USE_LARGEFILE64
51 struct stat64 {
52         unsigned long long st_dev;      /* Device.  */
53         unsigned long long st_ino;      /* File serial number.  */
54         unsigned int st_mode;           /* File mode.  */
55         unsigned int st_nlink;          /* Link count.  */
56         unsigned int st_uid;            /* User ID of the file's owner.  */
57         unsigned int st_gid;            /* Group ID of the file's group. */
58         unsigned long long st_rdev;     /* Device number, if device.  */
59         unsigned short int __pad2;
60         long long st_size;              /* Size of file, in bytes.  */
61         long st_blksize;                /* Optimal block size for I/O.  */
62         long long st_blocks;            /* Number 512-byte blocks allocated. */
63         long st_atime;                  /* Time of last access.  */
64         unsigned long int __unused1;
65         long st_mtime;                  /* Time of last modification.  */
66         unsigned long int __unused2;
67         long st_ctime;                  /* Time of last status change.  */
68         unsigned long int __unused3;
69         unsigned long int __unused4;
70         unsigned long int __unused5;
71 };
72 #endif
73 #endif
74
75 #endif  /*  _BITS_STAT_STRUCT_H */
76