mirror of
git://sourceware.org/git/glibc.git
synced 2025-02-17 13:00:43 +08:00
Fix grp.h endgrent, getgrent namespace (bug 18528).
grp.h declares endgrent and getgrent if __USE_XOPEN2K8 (i.e. 2008 edition of POSIX, non-XSI). However, the 2013 Technical Corrigendum corrected the grp.h specification to XSI-shade these functions as in previous editions (see <http://austingroupbugs.net/view.php?id=24>), so they should not be declared for non-XSI POSIX. This patch corrects the conditions - using __USE_MISC || __USE_XOPEN_EXTENDED to match setgrent - and the conform/ test expectations for this header, thereby fixing the conform tests for this header for XPG3 (where the expectations were wrong) and the linknamespace tests for it for POSIX2008 (where the header bug meant it was wrongly considered a problem for endgrent to bring in a reference to setgrent). Tested for x86_64 and x86 (testsuite, and that installed stripped shared libraries are unchanged by the patch). [BZ #18528] * grp/grp.h (endgrent): Condition on [__USE_MISC || __USE_XOPEN_EXTENDED], not [__USE_XOPEN_EXTENDED || __USE_XOPEN2K8]. (getgrent): Likewise. * conform/data/grp.h-data [XPG3 || POSIX2008] (getgrent): Do not expect. [XPG3 || POSIX2008] (endgrent): Likewise. [XPG3] (setgrent): Likewise. * conform/Makefile (test-xfail-XPG3/grp.h/conform): Remove variable. (test-xfail-POSIX2008/grp.h/linknamespace): Likewise.
This commit is contained in:
parent
5371d99e87
commit
b400fdefc7
13
ChangeLog
13
ChangeLog
@ -1,5 +1,18 @@
|
||||
2015-06-12 Joseph Myers <joseph@codesourcery.com>
|
||||
|
||||
[BZ #18528]
|
||||
* grp/grp.h (endgrent): Condition on [__USE_MISC ||
|
||||
__USE_XOPEN_EXTENDED], not [__USE_XOPEN_EXTENDED ||
|
||||
__USE_XOPEN2K8].
|
||||
(getgrent): Likewise.
|
||||
* conform/data/grp.h-data [XPG3 || POSIX2008] (getgrent): Do not
|
||||
expect.
|
||||
[XPG3 || POSIX2008] (endgrent): Likewise.
|
||||
[XPG3] (setgrent): Likewise.
|
||||
* conform/Makefile (test-xfail-XPG3/grp.h/conform): Remove
|
||||
variable.
|
||||
(test-xfail-POSIX2008/grp.h/linknamespace): Likewise.
|
||||
|
||||
[BZ #18527]
|
||||
* login/getlogin_r.c (getlogin_r): Rename to __getlogin_r and
|
||||
define as weak alias of __getlogin_r. Use libc_hidden_weak.
|
||||
|
2
NEWS
2
NEWS
@ -21,7 +21,7 @@ Version 2.22
|
||||
18211, 18217, 18220, 18221, 18234, 18244, 18247, 18287, 18319, 18324,
|
||||
18333, 18346, 18397, 18409, 18410, 18412, 18418, 18422, 18434, 18444,
|
||||
18468, 18469, 18470, 18479, 18483, 18495, 18496, 18497, 18498, 18507,
|
||||
18512, 18519, 18520, 18522, 18527.
|
||||
18512, 18519, 18520, 18522, 18527, 18528.
|
||||
|
||||
* Cache information can be queried via sysconf() function on s390 e.g. with
|
||||
_SC_LEVEL1_ICACHE_SIZE as argument.
|
||||
|
@ -170,7 +170,6 @@ test-xfail-XOPEN2K8/ndbm.h/conform = yes
|
||||
# Unsorted expected failures.
|
||||
test-xfail-XPG3/fcntl.h/conform = yes
|
||||
test-xfail-XPG3/ftw.h/conform = yes
|
||||
test-xfail-XPG3/grp.h/conform = yes
|
||||
test-xfail-XPG3/langinfo.h/conform = yes
|
||||
test-xfail-XPG3/limits.h/conform = yes
|
||||
test-xfail-XPG3/pwd.h/conform = yes
|
||||
@ -361,7 +360,6 @@ test-xfail-UNIX98/wchar.h/linknamespace = yes
|
||||
test-xfail-XOPEN2K/fmtmsg.h/linknamespace = yes
|
||||
test-xfail-XOPEN2K/netdb.h/linknamespace = yes
|
||||
test-xfail-XOPEN2K/syslog.h/linknamespace = yes
|
||||
test-xfail-POSIX2008/grp.h/linknamespace = yes
|
||||
test-xfail-POSIX2008/netdb.h/linknamespace = yes
|
||||
test-xfail-POSIX2008/semaphore.h/linknamespace = yes
|
||||
test-xfail-XOPEN2K8/fmtmsg.h/linknamespace = yes
|
||||
|
@ -19,12 +19,10 @@ function {struct group*} getgrgid (gid_t)
|
||||
function {struct group*} getgrnam (const char*)
|
||||
function int getgrgid_r (gid_t, struct group*, char *, size_t, struct group**)
|
||||
function int getgrnam_r (const char *, struct group *, char *, size_t, struct group**)
|
||||
# ifndef POSIX
|
||||
# if !defined XPG3 && !defined POSIX && !defined POSIX2008
|
||||
function {struct group*} getgrent (void)
|
||||
function void endgrent (void)
|
||||
# ifndef POSIX2008
|
||||
function void setgrent (void)
|
||||
# endif
|
||||
# endif
|
||||
|
||||
allow gr_*
|
||||
|
@ -60,9 +60,7 @@ struct group
|
||||
This function is a possible cancellation point and therefore not
|
||||
marked with __THROW. */
|
||||
extern void setgrent (void);
|
||||
#endif
|
||||
|
||||
#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8
|
||||
/* Close the group-file stream.
|
||||
|
||||
This function is a possible cancellation point and therefore not
|
||||
|
Loading…
Reference in New Issue
Block a user