This is the mail archive of the glibc-cvs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

GNU C Library master sources branch master updated. glibc-2.23-237-g12404bb


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, master has been updated
       via  12404bb04e1e86052fb22005e6c05ab3d1ced46e (commit)
      from  8f1b841e452dbb083112fd036033b7f4af506ba0 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=12404bb04e1e86052fb22005e6c05ab3d1ced46e

commit 12404bb04e1e86052fb22005e6c05ab3d1ced46e
Author: Joseph Myers <joseph@codesourcery.com>
Date:   Mon Apr 25 19:29:44 2016 +0000

    Fix stdio.h cuserid namespace (bug 19989).
    
    stdio.h declares cuserid if __USE_XOPEN.  But this was removed in the
    2001 edition of POSIX.
    
    The #endif comment "Use X/Open, but not issue 6." reflects the correct
    logic, but does not correspond to the #ifdef.  The use of a correct
    libc-hacker.  The online archives for libc-hacker in August 2000 are
    broken, but the messages can be found in the qmail archives in
    /sourceware1/qmail/lists-sourceware/libc-hacker/archive/26 if you have
    shell access to sourceware.
    
    The issue showed up in August 2000 because of a warning about a
    non-prototype definition in sysdeps/posix/cuserid.c when there was no
    previous prototype declaration.  Since we've now eliminated
    non-prototype function definitions, that issue does not apply.  The
    other points from that discussion were about whether it should be
    included in _GNU_SOURCE; whether _GNU_SOURCE should include
    "everything"; whether deprecated interfaces such as this should be
    excluded from it; and whether, even given exclusion of deprecated
    interfaces, it should apply for deprecations in a version of POSIX
    that at that time had not been released.
    
    This patch follows the more conservative approach to a fix of keeping
    the interface in _GNU_SOURCE.  That matches how L_cuserid is handled.
    I think there is a strong case for eliminating this interface from
    _GNU_SOURCE (but this may not automatically be the case for every
    interface removed in newer POSIX versions), but then L_cuserid should
    also be removed from _GNU_SOURCE (in stdio-common/stdio_lim.h.in) at
    the same time.
    
    Tested for x86_64 and x86 (testsuite, and that installed shared
    libraries are unchanged by the patch).
    
    	[BZ #19989]
    	* libio/stdio.h (cuserid): Do not declare if
    	[__USE_XOPEN2K && !__USE_GNU].
    	* conform/Makefile (test-xfail-XOPEN2K8/stdio.h/conform): Remove
    	variable.

diff --git a/ChangeLog b/ChangeLog
index dd35b6c..5c40ad8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2016-04-25  Joseph Myers  <joseph@codesourcery.com>
+
+	[BZ #19989]
+	* libio/stdio.h (cuserid): Do not declare if
+	[__USE_XOPEN2K && !__USE_GNU].
+	* conform/Makefile (test-xfail-XOPEN2K8/stdio.h/conform): Remove
+	variable.
+
 2016-04-25  Paul E. Murphy  <murphyp@linux.vnet.ibm.com>
 
 	* sysdeps/powerpc/powerpc64/multiarch/Makefile:
diff --git a/conform/Makefile b/conform/Makefile
index 0b5514c..e3baec7 100644
--- a/conform/Makefile
+++ b/conform/Makefile
@@ -226,7 +226,6 @@ test-xfail-POSIX2008/signal.h/conform = yes
 test-xfail-POSIX2008/sys/socket.h/conform = yes
 test-xfail-POSIX2008/sys/wait.h/conform = yes
 test-xfail-XOPEN2K8/signal.h/conform = yes
-test-xfail-XOPEN2K8/stdio.h/conform = yes
 test-xfail-XOPEN2K8/sys/wait.h/conform = yes
 
 conformtest-cc-flags = -I../include $(+sysdep-includes) $(sysincludes) -I..
diff --git a/libio/stdio.h b/libio/stdio.h
index d8d7fa0..4b66530 100644
--- a/libio/stdio.h
+++ b/libio/stdio.h
@@ -885,7 +885,7 @@ extern char *ctermid (char *__s) __THROW;
 #endif /* Use POSIX.  */
 
 
-#ifdef __USE_XOPEN
+#if (defined __USE_XOPEN && !defined __USE_XOPEN2K) || defined __USE_GNU
 /* Return the name of the current user.  */
 extern char *cuserid (char *__s);
 #endif /* Use X/Open, but not issue 6.  */

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog        |    8 ++++++++
 conform/Makefile |    1 -
 libio/stdio.h    |    2 +-
 3 files changed, 9 insertions(+), 2 deletions(-)


hooks/post-receive
-- 
GNU C Library master sources


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]