]> git.ipfire.org Git - thirdparty/coreutils.git/commitdiff
(S_ISUID, S_ISGID, S_ISVTX, S_IRWXU, S_IRWXG, S_IRWXO):
authorJim Meyering <jim@meyering.net>
Mon, 26 Apr 1999 12:48:12 +0000 (12:48 +0000)
committerJim Meyering <jim@meyering.net>
Mon, 26 Apr 1999 12:48:12 +0000 (12:48 +0000)
Define if not defined.
(CHMOD_MODE_BITS): New macro.

src/system.h

index f49f4b046a5a3ed6c81ef0b7d4ba1e2230a4c53b..201f989a03eea9dc5e5d00589eec30ebdb10383d 100644 (file)
 # define S_ISDOOR(m) (((m) & S_IFMT) == S_IFDOOR)
 #endif
 
+#if !S_ISUID
+# define S_ISUID 04000
+#endif
+#if !S_ISGID
+# define S_ISGID 02000
+#endif
+
+/* S_ISVTX is a common extension to POSIX.1.  */
+#ifndef S_ISVTX
+# define S_ISVTX 01000
+#endif
+
 #if !S_IWUSR
 # if S_IWRITE
 #  define S_IWUSR S_IWRITE
 #ifndef S_IXOTH
 # define S_IXOTH (S_IEXEC >> 6)
 #endif
+
+#ifndef S_IRWXU
+# define S_IRWXU (S_IRUSR | S_IWUSR | S_IXUSR)
+#endif
+#ifndef S_IRWXG
+# define S_IRWXG (S_IRGRP | S_IWGRP | S_IXGRP)
+#endif
+#ifndef S_IRWXO
+# define S_IRWXO (S_IROTH | S_IWOTH | S_IXOTH)
+#endif
+
+/* S_IXUGO is a common extension to POSIX.1.  */
 #ifndef S_IXUGO
 # define S_IXUGO (S_IXUSR | S_IXGRP | S_IXOTH)
 #endif
 
+/* All the mode bits that can be affected by chmod.  */
+#define CHMOD_MODE_BITS \
+  (S_ISUID | S_ISGID | S_ISVTX | S_IRWXU | S_IRWXG | S_IRWXO)
+
 #ifdef ST_MTIM_NSEC
 # define ST_TIME_CMP_NS(a, b, ns) ((a).ns < (b).ns ? -1 : (a).ns > (b).ns)
 #else