1 /*
2 * This file is subject to the terms and conditions of the GNU General Public
3 * License. See the file "COPYING" in the main directory of this archive
4 * for more details.
5 *
6 * Copyright (C) 1995, 1999, 2000 Ralf Baechle
7 * Copyright (C) 2000 Silicon Graphics, Inc.
8 */
9 #ifndef _ASM_STAT_H
10 #define _ASM_STAT_H
11
12 #include <linux/types.h>
13
14 struct __old_kernel_stat {
15 unsigned int st_dev;
16 unsigned int st_ino;
17 unsigned int st_mode;
18 unsigned int st_nlink;
19 unsigned int st_uid;
20 unsigned int st_gid;
21 unsigned int st_rdev;
22 long st_size;
23 unsigned int st_atime, st_res1;
24 unsigned int st_mtime, st_res2;
25 unsigned int st_ctime, st_res3;
26 unsigned int st_blksize;
27 int st_blocks;
28 unsigned int st_unused[2];
29 };
30
31 struct stat32 {
32 __kernel_dev_t32 st_dev;
33 int st_pad1[3];
34 __kernel_ino_t32 st_ino;
35 __kernel_mode_t32 st_mode;
36 __kernel_nlink_t32 st_nlink;
37 __kernel_uid_t32 st_uid;
38 __kernel_gid_t32 st_gid;
39 __kernel_dev_t32 st_rdev;
40 int st_pad2[2];
41 __kernel_off_t32 st_size;
42 int st_pad3;
43 __kernel_time_t32 st_atime;
44 int reserved0;
45 __kernel_time_t32 st_mtime;
46 int reserved1;
47 __kernel_time_t32 st_ctime;
48 int reserved2;
49 int st_blksize;
50 int st_blocks;
51 int st_pad4[14];
52 };
53
54 /* The memory layout is the same as of struct stat64 of the 32-bit kernel. */
55 struct stat {
56 dev_t st_dev;
57 unsigned int st_pad0[3]; /* Reserved for st_dev expansion */
58
59 unsigned long st_ino;
60
61 mode_t st_mode;
62 nlink_t st_nlink;
63
64 uid_t st_uid;
65 gid_t st_gid;
66
67 dev_t st_rdev;
68 unsigned int st_pad1[3]; /* Reserved for st_rdev expansion */
69
70 off_t st_size;
71
72 /*
73 * Actually this should be timestruc_t st_atime, st_mtime and st_ctime
74 * but we don't have it under Linux.
75 */
76 unsigned int st_atime;
77 unsigned int reserved0; /* Reserved for st_atime expansion */
78
79 unsigned int st_mtime;
80 unsigned int reserved1; /* Reserved for st_mtime expansion */
81
82 unsigned int st_ctime;
83 unsigned int reserved2; /* Reserved for st_ctime expansion */
84
85 unsigned int st_blksize;
86 unsigned int st_pad2;
87
88 unsigned long st_blocks;
89 };
90
91 #endif /* _ASM_STAT_H */
92
This page was automatically generated by the
LXR engine.
Visit the LXR main site for more
information.