stat.h 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. #ifndef _PARISC_STAT_H
  2. #define _PARISC_STAT_H
  3. #include <linux/types.h>
  4. struct stat {
  5. unsigned int st_dev; /* dev_t is 32 bits on parisc */
  6. unsigned int st_ino; /* 32 bits */
  7. unsigned short st_mode; /* 16 bits */
  8. unsigned short st_nlink; /* 16 bits */
  9. unsigned short st_reserved1; /* old st_uid */
  10. unsigned short st_reserved2; /* old st_gid */
  11. unsigned int st_rdev;
  12. signed int st_size;
  13. signed int st_atime;
  14. unsigned int st_atime_nsec;
  15. signed int st_mtime;
  16. unsigned int st_mtime_nsec;
  17. signed int st_ctime;
  18. unsigned int st_ctime_nsec;
  19. int st_blksize;
  20. int st_blocks;
  21. unsigned int __unused1; /* ACL stuff */
  22. unsigned int __unused2; /* network */
  23. unsigned int __unused3; /* network */
  24. unsigned int __unused4; /* cnodes */
  25. unsigned short __unused5; /* netsite */
  26. short st_fstype;
  27. unsigned int st_realdev;
  28. unsigned short st_basemode;
  29. unsigned short st_spareshort;
  30. unsigned int st_uid;
  31. unsigned int st_gid;
  32. unsigned int st_spare4[3];
  33. };
  34. #define STAT_HAVE_NSEC
  35. struct hpux_stat64 {
  36. unsigned int st_dev; /* dev_t is 32 bits on parisc */
  37. unsigned int st_ino; /* 32 bits */
  38. unsigned short st_mode; /* 16 bits */
  39. unsigned short st_nlink; /* 16 bits */
  40. unsigned short st_reserved1; /* old st_uid */
  41. unsigned short st_reserved2; /* old st_gid */
  42. unsigned int st_rdev;
  43. signed long long st_size;
  44. signed int st_atime;
  45. unsigned int st_spare1;
  46. signed int st_mtime;
  47. unsigned int st_spare2;
  48. signed int st_ctime;
  49. unsigned int st_spare3;
  50. int st_blksize;
  51. unsigned long long st_blocks;
  52. unsigned int __unused1; /* ACL stuff */
  53. unsigned int __unused2; /* network */
  54. unsigned int __unused3; /* network */
  55. unsigned int __unused4; /* cnodes */
  56. unsigned short __unused5; /* netsite */
  57. short st_fstype;
  58. unsigned int st_realdev;
  59. unsigned short st_basemode;
  60. unsigned short st_spareshort;
  61. unsigned int st_uid;
  62. unsigned int st_gid;
  63. unsigned int st_spare4[3];
  64. };
  65. /* This is the struct that 32-bit userspace applications are expecting.
  66. * How 64-bit apps are going to be compiled, I have no idea. But at least
  67. * this way, we don't have a wrapper in the kernel.
  68. */
  69. struct stat64 {
  70. unsigned long long st_dev;
  71. unsigned int __pad1;
  72. unsigned int __st_ino; /* Not actually filled in */
  73. unsigned int st_mode;
  74. unsigned int st_nlink;
  75. unsigned int st_uid;
  76. unsigned int st_gid;
  77. unsigned long long st_rdev;
  78. unsigned int __pad2;
  79. signed long long st_size;
  80. signed int st_blksize;
  81. signed long long st_blocks;
  82. signed int st_atime;
  83. unsigned int st_atime_nsec;
  84. signed int st_mtime;
  85. unsigned int st_mtime_nsec;
  86. signed int st_ctime;
  87. unsigned int st_ctime_nsec;
  88. unsigned long long st_ino;
  89. };
  90. #endif