87 lines · 1.9 KB · C
RawDownload
#ifndef _ASMARM_STAT_H#define _ASMARM_STAT_H struct __old_kernel_stat {	unsigned short st_dev;	unsigned short st_ino;	unsigned short st_mode;	unsigned short st_nlink;	unsigned short st_uid;	unsigned short st_gid;	unsigned short st_rdev;	unsigned long  st_size;	unsigned long  st_atime;	unsigned long  st_mtime;	unsigned long  st_ctime;}; #define STAT_HAVE_NSEC  struct stat {#if defined(__ARMEB__)	unsigned short st_dev;	unsigned short __pad1;#else	unsigned long  st_dev;#endif	unsigned long  st_ino;	unsigned short st_mode;	unsigned short st_nlink;	unsigned short st_uid;	unsigned short st_gid;#if defined(__ARMEB__)	unsigned short st_rdev;	unsigned short __pad2;#else	unsigned long  st_rdev;#endif	unsigned long  st_size;	unsigned long  st_blksize;	unsigned long  st_blocks;	unsigned long  st_atime;	unsigned long  st_atime_nsec;	unsigned long  st_mtime;	unsigned long  st_mtime_nsec;	unsigned long  st_ctime;	unsigned long  st_ctime_nsec;	unsigned long  __unused4;	unsigned long  __unused5;}; /* This matches struct stat64 in glibc2.1, hence the absolutely * insane amounts of padding around dev_t's. * Note: The kernel zero's the padded region because glibc might read them * in the hope that the kernel has stretched to using larger sizes. */struct stat64 {	unsigned long long	st_dev;	unsigned char   __pad0[4]; #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 long long	st_rdev;	unsigned char   __pad3[4]; 	long long	st_size;	unsigned long	st_blksize;	unsigned long long st_blocks;	/* Number 512-byte blocks allocated. */ 	unsigned long	st_atime;	unsigned long	st_atime_nsec; 	unsigned long	st_mtime;	unsigned long	st_mtime_nsec; 	unsigned long	st_ctime;	unsigned long	st_ctime_nsec; 	unsigned long long	st_ino;}; #endif