mirror of
git://sourceware.org/git/glibc.git
synced 2024-12-27 04:41:02 +08:00
d7f9cd89c2
Don't use struct timespec. * sysdeps/unix/sysv/linux/mips/xstatconv.c (__xstat_conv, __xstat64_conv): Copy individual timespec fields.
58 lines
1.5 KiB
C
58 lines
1.5 KiB
C
#include <sgidefs.h>
|
|
/* As tempting as it is to define XSTAT_IS_XSTAT64 for n64, the
|
|
userland data structures are not identical, because of different
|
|
padding. */
|
|
/* Definition of `struct stat' used in the kernel. */
|
|
#if _MIPS_SIM != _ABIO32
|
|
struct kernel_stat
|
|
{
|
|
unsigned int st_dev;
|
|
unsigned int __pad1[3];
|
|
unsigned long long st_ino;
|
|
unsigned int st_mode;
|
|
unsigned int st_nlink;
|
|
int st_uid;
|
|
int st_gid;
|
|
unsigned int st_rdev;
|
|
unsigned int __pad2[3];
|
|
long long st_size;
|
|
unsigned int st_atime_sec;
|
|
unsigned int st_atime_nsec;
|
|
unsigned int st_mtime_sec;
|
|
unsigned int st_mtime_nsec;
|
|
unsigned int st_ctime_sec;
|
|
unsigned int st_ctime_nsec;
|
|
unsigned int st_blksize;
|
|
unsigned int __pad3;
|
|
unsigned long long st_blocks;
|
|
};
|
|
#else
|
|
struct kernel_stat
|
|
{
|
|
unsigned long int st_dev;
|
|
long int __pad1[3]; /* Reserved for network id */
|
|
unsigned long int st_ino;
|
|
unsigned long int st_mode;
|
|
unsigned long int st_nlink;
|
|
long int st_uid;
|
|
long int st_gid;
|
|
unsigned long int st_rdev;
|
|
long int __pad2[2];
|
|
long int st_size;
|
|
long int __pad3;
|
|
unsigned int st_atime_sec;
|
|
unsigned int st_atime_nsec;
|
|
unsigned int st_mtime_sec;
|
|
unsigned int st_mtime_nsec;
|
|
unsigned int st_ctime_sec;
|
|
unsigned int st_ctime_nsec;
|
|
long int st_blksize;
|
|
long int st_blocks;
|
|
char st_fstype[16]; /* Filesystem type name, unsupported */
|
|
long st_pad4[8];
|
|
/* Linux specific fields */
|
|
unsigned int st_flags;
|
|
unsigned int st_gen;
|
|
};
|
|
#endif
|