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 stat32 {
15 __kernel_dev_t32 st_dev;
16 int st_pad1[3];
17 __kernel_ino_t32 st_ino;
18 __kernel_mode_t32 st_mode;
19 __kernel_nlink_t32 st_nlink;
20 __kernel_uid_t32 st_uid;
21 __kernel_gid_t32 st_gid;
22 __kernel_dev_t32 st_rdev;
23 int st_pad2[2];
24 __kernel_off_t32 st_size;
25 int st_pad3;
26 __kernel_time_t32 st_atime;
27 int reserved0;
28 __kernel_time_t32 st_mtime;
29 int reserved1;
30 __kernel_time_t32 st_ctime;
31 int reserved2;
32 int st_blksize;
33 int st_blocks;
34 int st_pad4[14];
35 };
36
37 /* The memory layout is the same as of struct stat64 of the 32-bit kernel. */
38 struct stat {
39 dev_t st_dev;
40 unsigned int st_pad0[3]; /* Reserved for st_dev expansion */
41
42 unsigned long st_ino;
43
44 mode_t st_mode;
45 nlink_t st_nlink;
46
47 uid_t st_uid;
48 gid_t st_gid;
49
50 dev_t st_rdev;
51 unsigned int st_pad1[3]; /* Reserved for st_rdev expansion */
52
53 off_t st_size;
54
55 /*
56 * Actually this should be timestruc_t st_atime, st_mtime and st_ctime
57 * but we don't have it under Linux.
58 */
59 unsigned int st_atime;
60 unsigned int reserved0; /* Reserved for st_atime expansion */
61
62 unsigned int st_mtime;
63 unsigned int reserved1; /* Reserved for st_mtime expansion */
64
65 unsigned int st_ctime;
66 unsigned int reserved2; /* Reserved for st_ctime expansion */
67
68 unsigned int st_blksize;
69 unsigned int st_pad2;
70
71 unsigned long st_blocks;
72 };
73
74 #endif /* _ASM_STAT_H */
Cache object: d62d9a0156a4c91c0dd2aa1f4a606439
|