Move the sources to trunk
[opencv] / apps / Hawk / CVEiCL / EiC / src / ppc403 / stat.h
1 #ifndef _SYS_STAT_H\r
2 #define _SYS_STAT_H\r
3 \r
4 #ifdef __cplusplus\r
5 extern "C" {\r
6 #endif\r
7 \r
8 #include <_ansi.h>\r
9 #include <time.h>\r
10 #include <sys/types.h>\r
11 \r
12 #ifdef __i386__\r
13 #ifdef __MSDOS__\r
14 #include "stat-dj.h"\r
15 #endif\r
16 #endif\r
17 \r
18 /* dj's stat defines _STAT_H_ */\r
19 #ifndef _STAT_H_\r
20 \r
21 struct  stat \r
22 {\r
23   dev_t         st_dev;\r
24   ino_t         st_ino;\r
25   mode_t        st_mode;\r
26   short         st_nlink;\r
27   uid_t         st_uid;\r
28   gid_t         st_gid;\r
29   dev_t         st_rdev;\r
30   off_t         st_size;\r
31   /* SysV/sco doesn't have the rest... */\r
32   time_t        st_atime;\r
33   int   st_spare1;\r
34   time_t        st_mtime;\r
35   int   st_spare2;\r
36   time_t        st_ctime;\r
37   int   st_spare3;\r
38   long          st_blksize;\r
39   long          st_blocks;\r
40   long  st_spare4[2];\r
41 };\r
42 \r
43 #define _IFMT           0170000 /* type of file */\r
44 #define         _IFDIR  0040000 /* directory */\r
45 #define         _IFCHR  0020000 /* character special */\r
46 #define         _IFBLK  0060000 /* block special */\r
47 #define         _IFREG  0100000 /* regular */\r
48 #define         _IFLNK  0120000 /* symbolic link */\r
49 #define         _IFSOCK 0140000 /* socket */\r
50 #define         _IFIFO  0010000 /* fifo */\r
51 \r
52 #define         S_BLKSIZE  1024 /* size of a block */\r
53 \r
54 #define S_ISUID         0004000 /* set user id on execution */\r
55 #define S_ISGID         0002000 /* set group id on execution */\r
56 #ifndef _POSIX_SOURCE\r
57 #define S_ISVTX         0001000 /* save swapped text even after use */\r
58 #define S_IREAD         0000400 /* read permission, owner */\r
59 #define S_IWRITE        0000200 /* write permission, owner */\r
60 #define S_IEXEC         0000100 /* execute/search permission, owner */\r
61 \r
62 #define S_ENFMT         0002000 /* enforcement-mode locking */\r
63 \r
64 #define S_IFMT          _IFMT\r
65 #define S_IFDIR         _IFDIR\r
66 #define S_IFCHR         _IFCHR\r
67 #define S_IFBLK         _IFBLK\r
68 #define S_IFREG         _IFREG\r
69 #define S_IFLNK         _IFLNK\r
70 #define S_IFSOCK        _IFSOCK\r
71 #define S_IFIFO         _IFIFO\r
72 #endif  /* !_POSIX_SOURCE */\r
73 \r
74 \r
75 #define S_IRWXU         0000700 /* rwx, owner */\r
76 #define         S_IRUSR 0000400 /* read permission, owner */\r
77 #define         S_IWUSR 0000200 /* write permission, owner */\r
78 #define         S_IXUSR 0000100 /* execute/search permission, owner */\r
79 #define S_IRWXG         0000070 /* rwx, group */\r
80 #define         S_IRGRP 0000040 /* read permission, group */\r
81 #define         S_IWGRP 0000020 /* write permission, grougroup */\r
82 #define         S_IXGRP 0000010 /* execute/search permission, group */\r
83 #define S_IRWXO         0000007 /* rwx, other */\r
84 #define         S_IROTH 0000004 /* read permission, other */\r
85 #define         S_IWOTH 0000002 /* write permission, other */\r
86 #define         S_IXOTH 0000001 /* execute/search permission, other */\r
87 \r
88 #define S_ISBLK(m)      (((m)&_IFMT) == _IFBLK)\r
89 #define S_ISCHR(m)      (((m)&_IFMT) == _IFCHR)\r
90 #define S_ISDIR(m)      (((m)&_IFMT) == _IFDIR)\r
91 #define S_ISFIFO(m)     (((m)&_IFMT) == _IFIFO)\r
92 #define S_ISREG(m)      (((m)&_IFMT) == _IFREG)\r
93 #define S_ISLNK(m)      (((m)&_IFMT) == _IFLNK)\r
94 #define S_ISSOCK(m)     (((m)&_IFMT) == _IFSOCK)\r
95 \r
96 \r
97 int     _EXFUN(chmod,( const char *_path, mode_t _mode ));\r
98 int     _EXFUN(fstat,( int _fd, struct stat *_sbuf ));\r
99 int     _EXFUN(mkdir,( const char *_path, mode_t _mode ));\r
100 int     _EXFUN(mkfifo,( char *_path, mode_t _mode ));\r
101 int     _EXFUN(stat,( const char *_path, struct stat *_sbuf ));\r
102 mode_t  _EXFUN(umask,( mode_t _mask ));\r
103 \r
104 #endif /* !_STAT_H_ */\r
105 #ifdef __cplusplus\r
106 }\r
107 #endif\r
108 #endif /* _SYS_STAT_H */\r