From ee3323be35d13ef2b0107916070788d8256970bb Mon Sep 17 00:00:00 2001 From: Eric Andersen Date: Sun, 25 Aug 2002 00:22:16 +0000 Subject: Finish off the bits/kernel_stat.h cleanup for proper __USE_FILE_OFFSET64 handling. -Erik --- libc/sysdeps/linux/common/bits/kernel_stat.h | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) (limited to 'libc/sysdeps/linux/common/bits/kernel_stat.h') diff --git a/libc/sysdeps/linux/common/bits/kernel_stat.h b/libc/sysdeps/linux/common/bits/kernel_stat.h index 48ffdd290..b338e3d5c 100644 --- a/libc/sysdeps/linux/common/bits/kernel_stat.h +++ b/libc/sysdeps/linux/common/bits/kernel_stat.h @@ -6,6 +6,7 @@ * different opinion on the subject... */ #warning please verify struct stat for your architecture matches struct stat for x86... +#ifndef __USE_FILE_OFFSET64 struct stat { unsigned short st_dev; unsigned short __pad1; @@ -28,6 +29,32 @@ struct stat { unsigned long __unused4; unsigned long __unused5; }; +#else +struct stat { + unsigned short st_dev; + unsigned char __pad0[10]; +#define STAT64_HAS_BROKEN_ST_INO 1 + unsigned long __st_ino; + unsigned int st_mode; + unsigned int st_nlink; + unsigned long st_uid; + unsigned long st_gid; + unsigned short st_rdev; + unsigned char __pad3[10]; + long long st_size; + unsigned long st_blksize; + unsigned long st_blocks; /* Number 512-byte blocks allocated. */ + unsigned long __pad4; /* future possible st_blocks high bits */ + unsigned long st_atime; + unsigned long __pad5; + unsigned long st_mtime; + unsigned long __pad6; + unsigned long st_ctime; + unsigned long __pad7; /* will be high 32 bits of ctime someday */ + unsigned long long st_ino; +}; +#endif + #ifdef __USE_LARGEFILE64 struct stat64 { unsigned short st_dev; @@ -54,6 +81,5 @@ struct stat64 { }; #endif - #endif /* _BITS_STAT_STRUCT_H */ -- cgit v1.2.3