1 /* Stat-related compatibility stuff. */
2 
3 #ifndef EL__OSDEP_STAT_H
4 #define EL__OSDEP_STAT_H
5 
6 #include <sys/types.h>
7 #include <sys/stat.h> /* OS/2 needs this after sys/types.h */
8 #ifdef HAVE_UNISTD_H
9 #include <unistd.h>
10 #endif
11 
12 /* File permission flags not available on win32 systems. */
13 #ifndef S_IRUSR
14 #define S_IRUSR 0000400                 /* R for user */
15 #endif
16 #ifndef S_IWUSR
17 #define S_IWUSR 0000200                 /* W for user */
18 #endif
19 #ifndef S_IXUSR
20 #define S_IXUSR 0000100                 /* X for user */
21 #endif
22 #ifndef S_ISUID
23 #define S_ISUID 0004000                 /* set user id on execution */
24 #endif
25 #ifndef S_IRGRP
26 #define S_IRGRP 0000040                 /* R for group */
27 #endif
28 #ifndef S_IWGRP
29 #define S_IWGRP 0000020                 /* W for group */
30 #endif
31 #ifndef S_IXGRP
32 #define S_IXGRP 0000010                 /* X for group */
33 #endif
34 #ifndef S_ISGID
35 #define S_ISGID 0002000                 /* set group id on execution */
36 #endif
37 #ifndef S_IROTH
38 #define S_IROTH 0000004                 /* R for other */
39 #endif
40 #ifndef S_IWOTH
41 #define S_IWOTH 0000002                 /* W for other */
42 #endif
43 #ifndef S_IXOTH
44 #define S_IXOTH 0000001                 /* X for other */
45 #endif
46 #ifndef S_ISVTX
47 #define S_ISVTX  0001000                /* save swapped text even after use */
48 #endif
49 
50 #ifndef S_IRWXU
51 #define S_IRWXU (S_IRUSR | S_IWUSR | S_IXUSR)
52 #endif
53 #ifndef S_IRWXG
54 #define S_IRWXG (S_IRGRP | S_IWGRP | S_IXGRP)
55 #endif
56 #ifndef S_IRWXO
57 #define S_IRWXO (S_IROTH | S_IWOTH | S_IXOTH)
58 #endif
59 
60 #endif /* EL__OSDEP_STAT_H */
61