diff options
author | Manuel Novoa III <mjn3@codepoet.org> | 2002-08-24 21:38:44 +0000 |
---|---|---|
committer | Manuel Novoa III <mjn3@codepoet.org> | 2002-08-24 21:38:44 +0000 |
commit | d2b22f1c5d52de7bd70d2143681baeeb74ad693e (patch) | |
tree | 63176785a6c1ae10b545d6762f19a89c439c619e /libc/sysdeps | |
parent | e44c028c15f596875449eed8885824add58e6865 (diff) |
Tweak things so that struct stat and struct stat64 (seem to) work on
i386. This is for Erik to look at wrt the other archs.
Diffstat (limited to 'libc/sysdeps')
-rw-r--r-- | libc/sysdeps/linux/common/bits/stat.h | 7 | ||||
-rw-r--r-- | libc/sysdeps/linux/i386/bits/kernel_stat.h | 27 |
2 files changed, 27 insertions, 7 deletions
diff --git a/libc/sysdeps/linux/common/bits/stat.h b/libc/sysdeps/linux/common/bits/stat.h index 2a161bfd9..942accda1 100644 --- a/libc/sysdeps/linux/common/bits/stat.h +++ b/libc/sysdeps/linux/common/bits/stat.h @@ -40,13 +40,6 @@ * on the subject, and different kernel revs use different names... */ #include <bits/kernel_stat.h> -#ifdef __USE_LARGEFILE64 -# ifdef __USE_FILE_OFFSET64 -# define stat stat64 -# endif -#endif - - /* Tell code we have these members. */ #define _STATBUF_ST_BLKSIZE #define _STATBUF_ST_RDEV diff --git a/libc/sysdeps/linux/i386/bits/kernel_stat.h b/libc/sysdeps/linux/i386/bits/kernel_stat.h index 60901bb6a..9e7598f5e 100644 --- a/libc/sysdeps/linux/i386/bits/kernel_stat.h +++ b/libc/sysdeps/linux/i386/bits/kernel_stat.h @@ -4,6 +4,8 @@ /* This file provides whatever this particular arch's kernel thinks * struct stat should look like... It turns out each arch has a * different opinion on the subject... */ + +#ifndef __USE_FILE_OFFSET64 struct stat { unsigned short st_dev; unsigned short __pad1; @@ -26,6 +28,31 @@ struct stat { unsigned long __unused4; unsigned long __unused5; }; +#else +struct stat { + unsigned short st_dev; + unsigned char __pad0[10]; + 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; |