Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | #ifndef _PARISC_STAT_H |
2 | #define _PARISC_STAT_H | |
3 | ||
4 | #include <linux/types.h> | |
5 | ||
6 | struct stat { | |
7 | unsigned int st_dev; /* dev_t is 32 bits on parisc */ | |
8 | ino_t st_ino; /* 32 bits */ | |
9 | mode_t st_mode; /* 16 bits */ | |
10 | nlink_t st_nlink; /* 16 bits */ | |
11 | unsigned short st_reserved1; /* old st_uid */ | |
12 | unsigned short st_reserved2; /* old st_gid */ | |
13 | unsigned int st_rdev; | |
14 | off_t st_size; | |
15 | time_t st_atime; | |
16 | unsigned int st_atime_nsec; | |
17 | time_t st_mtime; | |
18 | unsigned int st_mtime_nsec; | |
19 | time_t st_ctime; | |
20 | unsigned int st_ctime_nsec; | |
21 | int st_blksize; | |
22 | int st_blocks; | |
23 | unsigned int __unused1; /* ACL stuff */ | |
24 | unsigned int __unused2; /* network */ | |
25 | ino_t __unused3; /* network */ | |
26 | unsigned int __unused4; /* cnodes */ | |
27 | unsigned short __unused5; /* netsite */ | |
28 | short st_fstype; | |
29 | unsigned int st_realdev; | |
30 | unsigned short st_basemode; | |
31 | unsigned short st_spareshort; | |
32 | uid_t st_uid; | |
33 | gid_t st_gid; | |
34 | unsigned int st_spare4[3]; | |
35 | }; | |
36 | ||
37 | #define STAT_HAVE_NSEC | |
38 | ||
39 | typedef __kernel_off64_t off64_t; | |
40 | ||
41 | struct hpux_stat64 { | |
42 | unsigned int st_dev; /* dev_t is 32 bits on parisc */ | |
43 | ino_t st_ino; /* 32 bits */ | |
44 | mode_t st_mode; /* 16 bits */ | |
45 | nlink_t st_nlink; /* 16 bits */ | |
46 | unsigned short st_reserved1; /* old st_uid */ | |
47 | unsigned short st_reserved2; /* old st_gid */ | |
48 | unsigned int st_rdev; | |
49 | off64_t st_size; | |
50 | time_t st_atime; | |
51 | unsigned int st_spare1; | |
52 | time_t st_mtime; | |
53 | unsigned int st_spare2; | |
54 | time_t st_ctime; | |
55 | unsigned int st_spare3; | |
56 | int st_blksize; | |
57 | __u64 st_blocks; | |
58 | unsigned int __unused1; /* ACL stuff */ | |
59 | unsigned int __unused2; /* network */ | |
60 | ino_t __unused3; /* network */ | |
61 | unsigned int __unused4; /* cnodes */ | |
62 | unsigned short __unused5; /* netsite */ | |
63 | short st_fstype; | |
64 | unsigned int st_realdev; | |
65 | unsigned short st_basemode; | |
66 | unsigned short st_spareshort; | |
67 | uid_t st_uid; | |
68 | gid_t st_gid; | |
69 | unsigned int st_spare4[3]; | |
70 | }; | |
71 | ||
72 | /* This is the struct that 32-bit userspace applications are expecting. | |
73 | * How 64-bit apps are going to be compiled, I have no idea. But at least | |
74 | * this way, we don't have a wrapper in the kernel. | |
75 | */ | |
76 | struct stat64 { | |
77 | unsigned long long st_dev; | |
78 | unsigned int __pad1; | |
79 | ||
80 | unsigned int __st_ino; /* Not actually filled in */ | |
81 | unsigned int st_mode; | |
82 | unsigned int st_nlink; | |
83 | unsigned int st_uid; | |
84 | unsigned int st_gid; | |
85 | unsigned long long st_rdev; | |
86 | unsigned int __pad2; | |
87 | signed long long st_size; | |
88 | signed int st_blksize; | |
89 | ||
90 | signed long long st_blocks; | |
91 | signed int st_atime; | |
92 | unsigned int st_atime_nsec; | |
93 | signed int st_mtime; | |
94 | unsigned int st_mtime_nsec; | |
95 | signed int st_ctime; | |
96 | unsigned int st_ctime_nsec; | |
97 | unsigned long long st_ino; | |
98 | }; | |
99 | ||
100 | #endif |