home *** CD-ROM | disk | FTP | other *** search
/ Mac Power 1999 February / MACPOWER-1999-02.ISO.7z / MACPOWER-1999-02.ISO / 9902⁄AMUG / UTILITY / mac06-0.95.sit / mac06-0.95 / usr / include / sys / sys_stat.h < prev    next >
Text File  |  1998-10-17  |  2KB  |  76 lines

  1. /* mac06ゥ1997,98 by HNS/DSITRI hns@computer.org
  2. ** sys/stat.h
  3. */
  4.  
  5. #pragma once
  6. #include "time.h"
  7. #include "sys/types.h"
  8.  
  9. #ifdef __SC__    /* Symantec C++ for PowerPC 8.0 */
  10. #pragma options align=mac68k
  11. #endif
  12.  
  13. struct stat
  14.     { /* inode information returned by stat/fstat */
  15.     dev_t        st_dev;        /* device of the inode */
  16.     ino_t        st_ino;        /* inode number */
  17.     mode_t        st_mode;    /* file mode */
  18.     nlink_t        st_nlink;    /* number of links to file */
  19.     uid_t        st_uid;        /* user id */
  20.     gid_t        st_gid;        /* group id */
  21.     dev_t        st_rdev;    /* for device files */
  22.     off_t        st_size;    /* file size in bytes */
  23.     time_t        st_atime;    /* time of last access */
  24.     time_t        st_mtime;    /* time last modification */
  25.     time_t        st_ctime;    /* time of original create */
  26.     };
  27.  
  28. #ifdef __SC__
  29. #pragma options align=reset
  30. #endif
  31.  
  32. #define S_IRWXU        0000700        /* mask for owner */
  33. #define S_IRUSR        0000400
  34. #define S_IWUSR        0000200
  35. #define S_IXUSR        0000100
  36. #define S_IRWXG        0000070        /* mask for group */
  37. #define S_IRGRP        0000040
  38. #define S_IWGRP        0000020
  39. #define S_IXGRP        0000010
  40. #define S_IRWXO        0000007        /* mask for other */
  41. #define S_IROTH        0000004
  42. #define S_IWOTH        0000002
  43. #define S_IXOTH        0000001
  44.  
  45. #ifndef _POSIX_SOURCE
  46. #define S_ISTICKY    0001000
  47. #endif
  48. #define S_ISGID        0002000
  49. #define S_ISUID        0004000
  50.  
  51. #define S_IFREG        0000000
  52. #define S_IFIFO        0010000
  53. #define S_IFCHR        0020000
  54. #define S_IFDIR        0040000
  55. #define S_IFBLK        0060000
  56. #define S_IFTYPE    0170000
  57.  
  58. #define S_ISDIR(m)    (((m)&S_IFTYPE) == S_IFDIR)
  59. #define S_ISCHR(m)    (((m)&S_IFTYPE) == S_IFCHR)
  60. #define S_ISBLK(m)    (((m)&S_IFTYPE) == S_IFBLK)
  61. #define S_ISREG(m)    (((m)&S_IFTYPE) == S_IFREG)
  62. #define S_ISFIFO(m)    (((m)&S_IFTYPE) == S_IFIFO)
  63. #ifndef _POSIC_SOURCE
  64. #define S_IFLNK        0030000
  65. #define S_ISSLNK(m)    (((m)&S_IFTYPE) == S_IFLNK)
  66. #endif
  67.  
  68. int chmod(const char *name, mode_t mode);
  69. int chown(const char *name, uid_t uid, gid_t gid);
  70. int fstat(int fd, struct stat *buf);
  71. int mkdir(const char *name, mode_t mode);
  72. int mkfifo(const char *name);
  73. int stat(const char *name, struct stat *buf);
  74. int umask(mode_t mask);
  75.  
  76. /* EOF */