glibc/nss
Joseph Myers 7fc03cf320 Fix -Os feof_unlocked linknamespace, localplt issues (bug 15105, bug 19463).
Continuing the fixes for linknamespace and localplt test failures with
-Os that arise from functions not being inlined in that case, this
patch fixes such failures for feof_unlocked.

The usual approach is followed of adding __feof_unlocked (inlined when
feof_unlocked is), making calls use it when required for namespace
reasons, and using libc_hidden_proto / libc_hidden_weak for the
feof_unlocked weak alias when only localplt but not namespace issues
are involved.  In the case of getaddrinfo.c, use of __feof_unlocked
needs to be conditional since that code is also used in nscd (where
__feof_unlocked is not available).

Tested for x86_64 (both without -Os to make sure that case continues
to work, and with -Os to make sure all the relevant linknamespace and
localplt test failures are resolved).  Because of other such failures
that remain after this patch, neither of the bugs can yet be closed.

	[BZ #15105]
	[BZ #19463]
	* libio/feof_u.c (feof_unlocked): Rename to __feof_unlocked and
	define as weak alias of __feof_unlocked.  Use libc_hidden_weak.
	* include/stdio.h (feof_unlocked): Use libc_hidden_proto.
	(__feof_unlocked): New declaration, and inline function if
	[__USE_EXTERN_INLINES].
	* iconv/gconv_conf.c (read_conf_file): Call __feof_unlocked
	instead of feof_unlocked.
	* intl/localealias.c [_LIBC] (FEOF): Likewise.
	* nss/nsswitch.c (nss_parse_file): Likewise.
	* sysdeps/unix/sysv/linux/readonly-area.c (__readonly_area):
	Likewise.
	* time/getdate.c (__getdate_r): Likewise.
	* sysdeps/posix/getaddrinfo.c [IS_IN (libc)] (feof_unlocked):
	Define as macro to call __feof_unlocked.
2018-02-15 20:57:15 +00:00
..
nss_compat Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
nss_db Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
nss_files Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
alias-lookup.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
bug17079.c nss: Adjust tests to use nss_files only 2018-01-30 14:26:31 +01:00
bug-erange.c
compat-lookup.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
databases.def Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
db-Makefile Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
Depend
digits_dots.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
ethers-lookup.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
function.def Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
getent.c Update copyright dates not handled by scripts/update-copyrights. 2018-01-01 00:41:16 +00:00
getnssent_r.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
getnssent.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
getXXbyYY_r.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
getXXbyYY.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
getXXent_r.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
getXXent.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
grp-lookup.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
hosts-lookup.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
key-lookup.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
makedb.c Update copyright dates not handled by scripts/update-copyrights. 2018-01-01 00:41:16 +00:00
Makefile Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
netgrp-lookup.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
network-lookup.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
nss_hash.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
nss_test1.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
nss_test2.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
nss_test.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
nss_test.ver Extend NSS test suite 2017-07-17 15:52:44 -04:00
nss.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
nsswitch.c Fix -Os feof_unlocked linknamespace, localplt issues (bug 15105, bug 19463). 2018-02-15 20:57:15 +00:00
nsswitch.conf More configurability for secondary group lookup 2011-05-10 00:36:29 -04:00
nsswitch.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
proto-lookup.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
pwd-lookup.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
rewrite_field.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
rpc-lookup.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
service-lookup.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
sgrp-lookup.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
spwd-lookup.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
test-digits-dots.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
test-netdb.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-cancel-getpwuid_r.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-field.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-nss-files-hosts-erange.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-nss-files-hosts-multi.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-nss-getpwent.c nss: Adjust tests to use nss_files only 2018-01-30 14:26:31 +01:00
tst-nss-static.c Update nss tests to new skeleton 2017-08-17 18:00:51 -04:00
tst-nss-test1.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-nss-test2.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-nss-test3.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-nss-test4.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-nss-test5.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
valid_field.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
valid_list_field.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
Versions nss: Export nscd hash function as __nss_hash [BZ #22459] 2017-11-23 14:08:11 +01:00
XXX-lookup.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00