glibc/nss
Florian Weimer 36861a968a nss_files: Add generic code for set*ent, end*ent and file open
This reduces RSS usage if nss_files is not actually used, and can
be used later to make NSS data thread-specific.  It also results in
a small code size reduction.

Before:

   text	   data	    bss	    dec	    hex	filename
   2288	      0	     72	   2360	    938	nss/files-alias.os
   1807	      0	     72	   1879	    757	nss/files-ethers.os
   1371	      0	     72	   1443	    5a3	nss/files-grp.os
   6246	      0	     72	   6318	   18ae	nss/files-hosts.os
    869	      0	      0	    869	    365	nss/files-initgroups.os
    666	      0	      0	    666	    29a	nss/files-init.os
   1934	      0	      0	   1934	    78e	nss/files-netgrp.os
   2353	      0	     72	   2425	    979	nss/files-network.os
   2130	      0	     72	   2202	    89a	nss/files-proto.os
   1372	      0	     72	   1444	    5a4	nss/files-pwd.os
   2124	      0	     72	   2196	    894	nss/files-rpc.os
   2265	      0	     72	   2337	    921	nss/files-service.os
   1125	      0	     72	   1197	    4ad	nss/files-sgrp.os
   1124	      0	     72	   1196	    4ac	nss/files-spwd.os

After:

   text	   data	    bss	    dec	    hex	filename
   2040	      0	      0	   2040	    7f8	nss/files-alias.os
   1599	      0	      0	   1599	    63f	nss/files-ethers.os
   1155	      0	      0	   1155	    483	nss/files-grp.os
   6010	      0	      0	   6010	   177a	nss/files-hosts.os
    869	      0	      0	    869	    365	nss/files-initgroups.os
    666	      0	      0	    666	    29a	nss/files-init.os
   1934	      0	      0	   1934	    78e	nss/files-netgrp.os
   2129	      0	      0	   2129	    851	nss/files-network.os
   1914	      0	      0	   1914	    77a	nss/files-proto.os
   1156	      0	      0	   1156	    484	nss/files-pwd.os
   1908	      0	      0	   1908	    774	nss/files-rpc.os
   2057	      0	      0	   2057	    809	nss/files-service.os
    909	      0	      0	    909	    38d	nss/files-sgrp.os
    908	      0	      0	    908	    38c	nss/files-spwd.os
   1090	      0	      8	   1098	    44a	nss/nss_files_data.os

27674 code bytes before, 26344 code bytes after, so it is an overall
win despite the extra initialization code.

Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
2021-07-07 18:33:52 +02:00
..
nss_compat nss: fix nss_database_lookup2's alternate handling [BZ #27416] 2021-03-09 14:34:50 -05:00
nss_db
nss_files nss_files: Add generic code for set*ent, end*ent and file open 2021-07-07 18:33:52 +02:00
tst-nss-compat1.root nss: fix nss_database_lookup2's alternate handling [BZ #27416] 2021-03-09 14:34:50 -05:00
tst-nss-db-endgrent.root/etc
tst-nss-db-endpwent.root
tst-nss-files-hosts-long.root/etc
tst-nss-test3.root
tst-reload1.root
tst-reload2.root nss: Re-enable NSS module loading after chroot [BZ #27389] 2021-03-02 16:14:18 -05:00
alias-lookup.c
bug17079.c
bug-erange.c
compat-lookup.c
databases.def nss: fix nss_database_lookup2's alternate handling [BZ #27416] 2021-03-09 14:34:50 -05:00
db-Makefile
Depend
digits_dots.c
ethers-lookup.c
function.def
getent.c
getnssent_r.c
getnssent.c
getXXbyYY_r.c
getXXbyYY.c
getXXent_r.c
getXXent.c
grp-lookup.c nss: fix nss_database_lookup2's alternate handling [BZ #27416] 2021-03-09 14:34:50 -05:00
hosts-lookup.c nss: fix nss_database_lookup2's alternate handling [BZ #27416] 2021-03-09 14:34:50 -05:00
key-lookup.c nss: fix nss_database_lookup2's alternate handling [BZ #27416] 2021-03-09 14:34:50 -05:00
makedb.c Use a #pragma to suppress a bogus GCC 10 warning instead of an assert [BZ 27832]. 2021-05-10 14:30:09 -06:00
Makefile nss_files: Add generic code for set*ent, end*ent and file open 2021-07-07 18:33:52 +02:00
netgrp-lookup.c
network-lookup.c nss: fix nss_database_lookup2's alternate handling [BZ #27416] 2021-03-09 14:34:50 -05:00
nss_action_parse.c
nss_action.c
nss_action.h
nss_database.c Use 64 bit time_t stat internally 2021-06-22 12:09:52 -03:00
nss_database.h nss: fix nss_database_lookup2's alternate handling [BZ #27416] 2021-03-09 14:34:50 -05:00
nss_fgetent_r.c
nss_files_data.c nss_files: Add generic code for set*ent, end*ent and file open 2021-07-07 18:33:52 +02:00
nss_files_fopen.c
nss_hash.c
nss_module.c nss: fix nss_database_lookup2's alternate handling [BZ #27416] 2021-03-09 14:34:50 -05:00
nss_module.h
nss_parse_line_result.c
nss_readline.c
nss_test1.c nss: fix nss_database_lookup2's alternate handling [BZ #27416] 2021-03-09 14:34:50 -05:00
nss_test2.c
nss_test.h nss: fix nss_database_lookup2's alternate handling [BZ #27416] 2021-03-09 14:34:50 -05:00
nss_test.ver
nss.h nss: Fix NSS_DECLARE_MODULE_FUNCTIONS handling of _nss_*_endnetgrent 2021-06-29 12:06:40 +02:00
nsswitch.c nss: fix nss_database_lookup2's alternate handling [BZ #27416] 2021-03-09 14:34:50 -05:00
nsswitch.conf
nsswitch.h nss: fix nss_database_lookup2's alternate handling [BZ #27416] 2021-03-09 14:34:50 -05:00
proto-lookup.c
pwd-lookup.c nss: fix nss_database_lookup2's alternate handling [BZ #27416] 2021-03-09 14:34:50 -05:00
rewrite_field.c
rpc-lookup.c
service-lookup.c
sgrp-lookup.c nss: fix nss_database_lookup2's alternate handling [BZ #27416] 2021-03-09 14:34:50 -05:00
spwd-lookup.c nss: fix nss_database_lookup2's alternate handling [BZ #27416] 2021-03-09 14:34:50 -05:00
test-digits-dots.c
test-netdb.c
tst-cancel-getpwuid_r.c
tst-field.c
tst-nss-compat1.c nss: fix nss_database_lookup2's alternate handling [BZ #27416] 2021-03-09 14:34:50 -05:00
tst-nss-db-endgrent.c
tst-nss-db-endpwent.c
tst-nss-files-alias-leak.c
tst-nss-files-alias-truncated.c
tst-nss-files-hosts-erange.c
tst-nss-files-hosts-getent.c
tst-nss-files-hosts-long.c
tst-nss-files-hosts-multi.c
tst-nss-getpwent.c
tst-nss-static.c
tst-nss-test1.c
tst-nss-test2.c
tst-nss-test3.c
tst-nss-test4.c
tst-nss-test5.c
tst-reload1.c
tst-reload2.c nss: Re-enable NSS module loading after chroot [BZ #27389] 2021-03-02 16:14:18 -05:00
valid_field.c
valid_list_field.c
Versions nss_files: Add generic code for set*ent, end*ent and file open 2021-07-07 18:33:52 +02:00
XXX-lookup.c nss: fix nss_database_lookup2's alternate handling [BZ #27416] 2021-03-09 14:34:50 -05:00