glibc/nss
Florian Weimer 171689dac7 nss: Introduce <nss_module.h>
This provides the struct nss_module type, which combines the old
struct service_library type with the known_function tree, by
statically allocating space for all function pointers.

struct nss_module is fairly large (536 bytes), but it will be
shared across NSS databases.  The old known_function handling
had non-some per-function overhead (at least 32 bytes per looked-up
function, but more for long function anmes), so overall, this is not
too bad.  Resolving all functions at load time simplifies locking,
and the repeated lookups should be fast because the caches are hot
at this point.

Reviewed-by: Siddhesh Poyarekar <siddhesh@sourceware.org>
2020-12-04 17:15:05 -05:00
..
nss_compat nss_compat: Do not use mmap to read database files (bug 26258) 2020-07-21 07:33:08 +02:00
nss_db nss_db: Use NSS_DECLARE_MODULE_FUNCTIONS 2020-02-13 09:14:51 +01:00
nss_files nss: Add __nss_fgetent_r 2020-07-21 07:33:50 +02:00
tst-nss-db-endgrent.root/etc nss_db: fix endent wrt NULL mappings [BZ #24695] [BZ #24696] 2019-07-10 14:51:18 -04:00
tst-nss-db-endpwent.root nss_db: fix endent wrt NULL mappings [BZ #24695] [BZ #24696] 2019-07-10 14:51:18 -04:00
tst-nss-files-hosts-long.root/etc nss: tst-nss-files-hosts-long: Add host.conf [BZ #21915] 2019-02-21 16:02:29 -05:00
tst-nss-test3.root Add test-in-container infrastructure. 2018-08-22 21:20:37 -04:00
alias-lookup.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
bug17079.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
bug-erange.c Update. 2002-09-29 18:25:48 +00:00
compat-lookup.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
databases.def Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
db-Makefile Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
Depend Update. 2000-01-02 04:20:21 +00:00
digits_dots.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ethers-lookup.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
function.def nss: Introduce <nss_module.h> 2020-12-04 17:15:05 -05:00
getent.c Update copyright dates not handled by scripts/update-copyrights. 2020-01-01 00:21:22 +00:00
getnssent_r.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
getnssent.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
getXXbyYY_r.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
getXXbyYY.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
getXXent_r.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
getXXent.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
grp-lookup.c Remove --enable-obsolete-nsl configure flag 2020-07-08 17:25:57 +02:00
hosts-lookup.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
key-lookup.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
makedb.c Disable warnings due to deprecated libselinux symbols used by nss and nscd 2020-07-23 12:20:38 +02:00
Makefile nss: Introduce <nss_module.h> 2020-12-04 17:15:05 -05:00
netgrp-lookup.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
network-lookup.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
nss_fgetent_r.c Remove tls.h inclusion from internal errno.h 2020-11-13 12:59:19 -03:00
nss_files_fopen.c nss_files: Consolidate file opening in __nss_files_fopen 2020-07-21 07:32:46 +02:00
nss_hash.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
nss_module.c nss: Introduce <nss_module.h> 2020-12-04 17:15:05 -05:00
nss_module.h nss: Introduce <nss_module.h> 2020-12-04 17:15:05 -05:00
nss_parse_line_result.c nss: Add __nss_fgetent_r 2020-07-21 07:33:50 +02:00
nss_readline.c nss: Add __nss_fgetent_r 2020-07-21 07:33:50 +02:00
nss_test1.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
nss_test2.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
nss_test.h Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
nss_test.ver Extend NSS test suite 2017-07-17 15:52:44 -04:00
nss.h nss: Add function types and NSS_DECLARE_MODULE_FUNCTIONS macro to <nss.h> 2020-02-13 09:14:40 +01:00
nsswitch.c Remove --enable-obsolete-nsl configure flag 2020-07-08 17:25:57 +02:00
nsswitch.conf Remove --enable-obsolete-nsl configure flag 2020-07-08 17:25:57 +02:00
nsswitch.h Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
proto-lookup.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
pwd-lookup.c Remove --enable-obsolete-nsl configure flag 2020-07-08 17:25:57 +02:00
rewrite_field.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
rpc-lookup.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
service-lookup.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
sgrp-lookup.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
spwd-lookup.c Remove --enable-obsolete-nsl configure flag 2020-07-08 17:25:57 +02:00
test-digits-dots.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
test-netdb.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
tst-cancel-getpwuid_r.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
tst-field.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
tst-nss-db-endgrent.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
tst-nss-db-endpwent.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
tst-nss-files-alias-leak.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
tst-nss-files-alias-truncated.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
tst-nss-files-hosts-erange.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
tst-nss-files-hosts-getent.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
tst-nss-files-hosts-long.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
tst-nss-files-hosts-multi.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
tst-nss-getpwent.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00: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. 2020-01-01 00:14:33 +00:00
tst-nss-test2.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
tst-nss-test3.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
tst-nss-test4.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
tst-nss-test5.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
valid_field.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
valid_list_field.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
Versions nss: Add __nss_fgetent_r 2020-07-21 07:33:50 +02:00
XXX-lookup.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00