home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / World_Of_Computer_Software-02-387-Vol-3of3.iso / e / emxdev8f.zip / STAT.H < prev    next >
C/C++ Source or Header  |  1992-11-18  |  1KB  |  60 lines

  1. /* sys/stat.h (emx+gcc) */
  2.  
  3. #if !defined (_SYS_STAT_H)
  4. #define _SYS_STAT_H
  5.  
  6. #if defined (__cplusplus)
  7. extern "C" {
  8. #endif
  9.  
  10. #if !defined (_TIME_T)
  11. #define _TIME_T
  12. typedef unsigned long time_t;
  13. #endif
  14.  
  15. #if !defined (_STAT)
  16. #define _STAT
  17. struct stat
  18. {
  19.   dev_t   st_dev;
  20.   ino_t   st_ino;
  21.   mode_t  st_mode;
  22.   nlink_t st_nlink;
  23.   uid_t   st_uid;
  24.   gid_t   st_gid;
  25.   dev_t   st_rdev;
  26.   off_t   st_size;
  27.   time_t  st_atime;
  28.   time_t  st_mtime;
  29.   time_t  st_ctime;
  30.   long    st_attr;
  31.   long    st_reserved;
  32. };
  33. #endif
  34.  
  35. #if !defined (S_IREAD)
  36. #define S_IREAD  0400     /* Owner: read */
  37. #define S_IWRITE 0200     /* Owner: write */
  38. #define S_IEXEC  0100     /* Owner: exec */
  39.  
  40. #define S_IFMT   0160000  /* Mask for file type */
  41. #define S_IFCHR  0020000  /* Character device */
  42. #define S_IFDIR  0040000  /* Directory */
  43. #define S_IFREG  0100000  /* Regular file */
  44. #define S_IFSOCK 0140000  /* Socket (or pipe) */
  45.  
  46. #define S_ISCHR(mode)  (((mode) & S_IFMT) == S_IFCHR)
  47. #define S_ISDIR(mode)  (((mode) & S_IFMT) == S_IFDIR)
  48. #define S_ISREG(mode)  (((mode) & S_IFMT) == S_IFREG)
  49. #define S_ISSOCK(mode) (((mode) & S_IFMT) == S_IFSOCK)
  50. #endif
  51.  
  52. int fstat (int handle, struct stat *buffer);
  53. int stat (__const__ char *name, struct stat *buffer);
  54.  
  55. #if defined (__cplusplus)
  56. }
  57. #endif
  58.  
  59. #endif /* !defined (SYS_STAT_H) */
  60.