summary refs log tree commit diff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2010-01-11 21:11:29 -0800
committerUlrich Drepper <drepper@redhat.com>2010-01-11 21:11:29 -0800
commite00a72ef5e8c9801d14dc2ece38a8fd03e3d11d8 (patch)
treee70e92acf0c36cf32f96f4cdcf49ce7caea6385c
parentf8c1b120d49dc9a19a7e392d0e5d2cc4015f818b (diff)
downloadglibc-e00a72ef5e8c9801d14dc2ece38a8fd03e3d11d8.tar.gz
glibc-e00a72ef5e8c9801d14dc2ece38a8fd03e3d11d8.tar.xz
glibc-e00a72ef5e8c9801d14dc2ece38a8fd03e3d11d8.zip
Fix up sys/stat.h for XPG7.
-rw-r--r--ChangeLog3
-rw-r--r--conform/data/sys/stat.h-data6
-rw-r--r--io/sys/stat.h4
3 files changed, 8 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index 003377eb19..16638da8a3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
 2010-01-11  Ulrich Drepper  <drepper@redhat.com>
 
+	* io/sys/stat.h: Declare fchmod for XPG7.
+	* conform/data/sys/stat.h-data: Fix up for XPG7.
+
 	* termios/termios.h: Define pid_t for XPG7.
 
 	* conform/data/math.h-data: Fix up for XPG6 and XPG7.
diff --git a/conform/data/sys/stat.h-data b/conform/data/sys/stat.h-data
index 72c656f19e..df39fd3d81 100644
--- a/conform/data/sys/stat.h-data
+++ b/conform/data/sys/stat.h-data
@@ -20,8 +20,10 @@ element {struct stat} blksize_t st_blksize
 element {struct stat} blkcnt_t st_blocks
 #endif
 
+#if !defined POSIX && !defined POSIX2008
 type blkcnt_t
 type blksize_t
+#endif
 type dev_t
 type ino_t
 type mode_t
@@ -30,7 +32,7 @@ type uid_t
 type gid_t
 type off_t
 type time_t
-# ifdef XOPEN2K8
+# if defined XOPEN2K8 || defined POSIX2008
 type {struct timespec}
 element {struct timespec} time_t tv_sec
 element {struct timespec} long tv_nsec
@@ -107,8 +109,6 @@ function int mkfifoat (int, const char*, mode_t)
 # endif
 # if !defined POSIX && !defined POSIX2008
 function int mknod (const char*, mode_t, dev_t)
-# endif
-# if defined XOPEN2K8 || defined POSIX2008
 function int mknodat (int, const char*, mode_t, dev_t)
 # endif
 function int stat (const char*, struct stat*)
diff --git a/io/sys/stat.h b/io/sys/stat.h
index c21801d6a9..733a927888 100644
--- a/io/sys/stat.h
+++ b/io/sys/stat.h
@@ -29,7 +29,7 @@
 #include <bits/types.h>		/* For __mode_t and __dev_t.  */
 
 #if defined __USE_XOPEN || defined __USE_XOPEN2K || defined __USE_MISC \
-         || defined __USE_ATFILE
+	 || defined __USE_ATFILE
 # if defined __USE_XOPEN || defined __USE_XOPEN2K
 #  define __need_time_t
 # endif
@@ -293,7 +293,7 @@ extern int lchmod (__const char *__file, __mode_t __mode)
 #endif
 
 /* Set file access permissions of the file FD is open on to MODE.  */
-#if defined __USE_BSD || defined __USE_XOPEN_EXTENDED
+#if defined __USE_BSD || defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8
 extern int fchmod (int __fd, __mode_t __mode) __THROW;
 #endif