From 9ff81856dbbbcedb63de546d10dc1cdaeb982a6b Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Tue, 17 May 2016 15:50:00 +0000 Subject: [PATCH] Make sys/stat.h define S_IFSOCK, S_ISSOCK for XPG4 (bug 20076). sys/stat.h should define S_IFSOCK and S_ISSOCK for XPG4 (XNS), but does not. This patch corrects the relevant header conditionals. Tested for x86_64 and x86 (testsuite, and that installed shared libraries are unchanged by the patch). [BZ #20076] * io/sys/stat.h (S_IFSOCK): Define for [__USE_XOPEN_EXTENDED] instead of [__USE_UNIX98]. (S_ISSOCK): Likewise. * conform/Makefile (test-xfail-XPG4/sys/stat.h/conform): Remove variable. --- ChangeLog | 7 +++++++ conform/Makefile | 1 - io/sys/stat.h | 4 ++-- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 7d38ded1b7..2be1e21676 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,12 @@ 2016-05-17 Joseph Myers + [BZ #20076] + * io/sys/stat.h (S_IFSOCK): Define for [__USE_XOPEN_EXTENDED] + instead of [__USE_UNIX98]. + (S_ISSOCK): Likewise. + * conform/Makefile (test-xfail-XPG4/sys/stat.h/conform): Remove + variable. + [BZ #20074] * stdlib/stdlib.h (rand_r): Declare if [__USE_POSIX199506], not if [__USE_POSIX]. diff --git a/conform/Makefile b/conform/Makefile index 8e9ad85772..f668b2e19a 100644 --- a/conform/Makefile +++ b/conform/Makefile @@ -174,7 +174,6 @@ test-xfail-XPG4/arpa/inet.h/conform = yes test-xfail-XPG4/netdb.h/conform = yes test-xfail-XPG4/netinet/in.h/conform = yes test-xfail-XPG4/signal.h/conform = yes -test-xfail-XPG4/sys/stat.h/conform = yes test-xfail-XPG4/sys/wait.h/conform = yes test-xfail-XPG4/ucontext.h/conform = yes test-xfail-POSIX/sys/wait.h/conform = yes diff --git a/io/sys/stat.h b/io/sys/stat.h index 416d5647d4..6925f61ae5 100644 --- a/io/sys/stat.h +++ b/io/sys/stat.h @@ -115,7 +115,7 @@ __BEGIN_DECLS # ifdef __S_IFLNK # define S_IFLNK __S_IFLNK # endif -# if (defined __USE_MISC || defined __USE_UNIX98) \ +# if (defined __USE_MISC || defined __USE_XOPEN_EXTENDED) \ && defined __S_IFSOCK # define S_IFSOCK __S_IFSOCK # endif @@ -140,7 +140,7 @@ __BEGIN_DECLS # define S_ISLNK(mode) 0 #endif -#if (defined __USE_UNIX98 || defined __USE_XOPEN2K) \ +#if (defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K) \ && defined __S_IFSOCK # define S_ISSOCK(mode) __S_ISTYPE((mode), __S_IFSOCK) #elif defined __USE_XOPEN2K