1d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng#ifndef _ASMARM_STAT_H 2d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng#define _ASMARM_STAT_H 3d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng 4d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Chengstruct __old_kernel_stat { 5d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned short st_dev; 6d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned short st_ino; 7d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned short st_mode; 8d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned short st_nlink; 9d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned short st_uid; 10d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned short st_gid; 11d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned short st_rdev; 12d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long st_size; 13d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long st_atime; 14d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long st_mtime; 15d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long st_ctime; 16d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng}; 17d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng 186ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris#define STAT_HAVE_NSEC 19d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng 20d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Chengstruct stat { 21d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng#if defined(__ARMEB__) 22d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned short st_dev; 23d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned short __pad1; 24d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng#else 25d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long st_dev; 26d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng#endif 27d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long st_ino; 28d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned short st_mode; 29d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned short st_nlink; 30d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned short st_uid; 31d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned short st_gid; 32d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng#if defined(__ARMEB__) 33d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned short st_rdev; 34d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned short __pad2; 35d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng#else 36d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long st_rdev; 37d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng#endif 38d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long st_size; 39d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long st_blksize; 40d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long st_blocks; 41d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long st_atime; 42d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long st_atime_nsec; 43d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long st_mtime; 44d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long st_mtime_nsec; 45d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long st_ctime; 46d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long st_ctime_nsec; 47d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long __unused4; 48d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long __unused5; 49d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng}; 50d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng 51d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng/* This matches struct stat64 in glibc2.1, hence the absolutely 52d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng * insane amounts of padding around dev_t's. 53d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng * Note: The kernel zero's the padded region because glibc might read them 54d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng * in the hope that the kernel has stretched to using larger sizes. 55d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng */ 56d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Chengstruct stat64 { 57d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long long st_dev; 58d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned char __pad0[4]; 59d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng 60d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng#define STAT64_HAS_BROKEN_ST_INO 1 61d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long __st_ino; 62d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned int st_mode; 63d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned int st_nlink; 64d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng 65d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long st_uid; 66d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long st_gid; 67d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng 68d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long long st_rdev; 69d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned char __pad3[4]; 70d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng 71d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng long long st_size; 72d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long st_blksize; 73d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long long st_blocks; /* Number 512-byte blocks allocated. */ 74d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng 75d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long st_atime; 76d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long st_atime_nsec; 77d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng 78d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long st_mtime; 79d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long st_mtime_nsec; 80d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng 81d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long st_ctime; 82d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long st_ctime_nsec; 83d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng 84d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng unsigned long long st_ino; 85d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng}; 86d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng 87d1c09396e629a9fef1939f7ab7dfb69455d82fb8Ben Cheng#endif 88