aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--conform/data/sys/stat.h-data5
-rw-r--r--io/sys/stat.h6
3 files changed, 11 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index 7db74b326c..a178be5de4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
2010-04-04 Ulrich Drepper <drepper@redhat.com>
+ * conform/data/sys/stat.h-data: Fix testing of S_IS* macros.
+
+ [BZ #11279]
+ * io/sys/stat.h: Always define S_ISSOCK for XPG6 and up.
+
[BZ #11287]
* csu/Makefile ($(objpfx)version-info.h): Handle newer kernel headers
which don't define UTS_RELEASE.
diff --git a/conform/data/sys/stat.h-data b/conform/data/sys/stat.h-data
index df39fd3d81..b0e10a4c7f 100644
--- a/conform/data/sys/stat.h-data
+++ b/conform/data/sys/stat.h-data
@@ -66,15 +66,14 @@ constant S_ISGID
constant S_ISVTX
#endif
-#if !defined POSIX && !defined POSIX2008
-macro S_IFMT
+#if !defined POSIX
macro S_ISBLK
macro S_ISCHR
macro S_ISDIR
macro S_ISFIFO
macro S_ISREG
macro S_ISLNK
-macro S_IFSOCK
+macro S_ISSOCK
#endif
// How to represent optional tests?
diff --git a/io/sys/stat.h b/io/sys/stat.h
index 733a927888..ac740cad38 100644
--- a/io/sys/stat.h
+++ b/io/sys/stat.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1992, 1995-2004, 2005, 2006, 2007, 2009
+/* Copyright (C) 1991, 1992, 1995-2004, 2005, 2006, 2007, 2009, 2010
Free Software Foundation, Inc.
This file is part of the GNU C Library.
@@ -143,9 +143,11 @@ __BEGIN_DECLS
# define S_ISLNK(mode) 0
#endif
-#if (defined __USE_BSD || defined __USE_UNIX98) \
+#if (defined __USE_BSD || defined __USE_UNIX98 || defined __USE_XOPEN2K) \
&& defined __S_IFSOCK
# define S_ISSOCK(mode) __S_ISTYPE((mode), __S_IFSOCK)
+#elif defined __USE_XOPEN2K
+# define S_ISSOCK(mode) 0
#endif
/* These are from POSIX.1b. If the objects are not implemented using separate