glibc/nss
Florian Weimer 54b1273395 nss: Protect against errno changes in function lookup (bug 28953)
dlopen may clobber errno.  The nss_test_errno module uses an ELF
constructor to achieve that, but there could be internal errors
during dlopen that cause this, too.  Therefore, the NSS framework
has to guard against such errno clobbers.

__nss_module_get_function is currently the only function that calls
__nss_module_load, so it is sufficient to save and restore errno
around this call.

Reviewed-by: Carlos O'Donell <carlos@redhat.com>
(cherry picked from commit 9bdf92c79d)
2022-03-11 11:14:24 +01:00
..
nss_compat nss: fix nss_database_lookup2's alternate handling [BZ #27416] 2021-03-09 14:34:50 -05:00
nss_db Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
nss_files Fix linknamespace errors and local-plt-usages in nss_files. 2021-07-14 16:59:12 +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 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 Fix failing nss/tst-nss-files-hosts-long with local resolver 2021-09-14 21:02:14 +02:00
tst-nss-test3.root Add test-in-container infrastructure. 2018-08-22 21:20:37 -04:00
tst-reload1.root Fix failing nss/tst-nss-files-hosts-long. 2021-07-12 11:59:04 +02:00
tst-reload2.root nss: Re-enable NSS module loading after chroot [BZ #27389] 2021-03-02 16:14:18 -05:00
alias-lookup.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
bug17079.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
bug-erange.c Update. 2002-09-29 18:25:48 +00:00
compat-lookup.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
databases.def nss: fix nss_database_lookup2's alternate handling [BZ #27416] 2021-03-09 14:34:50 -05:00
db-Makefile Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
Depend
digits_dots.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
ethers-lookup.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
function.def Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
getent.c Update copyright dates not handled by scripts/update-copyrights. 2021-01-02 12:17:34 -08:00
getnssent_r.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
getnssent.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
getXXbyYY_r.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
getXXbyYY.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
getXXent_r.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
getXXent.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
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: Protect against errno changes in function lookup (bug 28953) 2022-03-11 11:14:24 +01:00
netgrp-lookup.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
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 Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
nss_action.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
nss_action.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
nss_database.c nss: Use "files dns" as the default for the hosts database (bug 28700) 2021-12-17 12:17:18 +01: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 Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
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 Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
nss_files_functions.c nss: Directly load nss_dns, without going through dlsym/dlopen 2021-07-19 07:56:57 +02:00
nss_hash.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
nss_module.c nss: Protect against errno changes in function lookup (bug 28953) 2022-03-11 11:14:24 +01:00
nss_module.h nss: Directly load nss_dns, without going through dlsym/dlopen 2021-07-19 07:56:57 +02:00
nss_parse_line_result.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
nss_readline.c Fix linknamespace errors and local-plt-usages in nss_files. 2021-07-14 16:59:12 +02:00
nss_test1.c nss: fix nss_database_lookup2's alternate handling [BZ #27416] 2021-03-09 14:34:50 -05:00
nss_test2.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
nss_test_errno.c nss: Protect against errno changes in function lookup (bug 28953) 2022-03-11 11:14:24 +01:00
nss_test.h nss: fix nss_database_lookup2's alternate handling [BZ #27416] 2021-03-09 14:34:50 -05:00
nss_test.ver Extend NSS test suite 2017-07-17 15:52:44 -04:00
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 Remove --enable-obsolete-nsl configure flag 2020-07-08 17:25:57 +02:00
nsswitch.h nss: fix nss_database_lookup2's alternate handling [BZ #27416] 2021-03-09 14:34:50 -05:00
proto-lookup.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
pwd-lookup.c nss: fix nss_database_lookup2's alternate handling [BZ #27416] 2021-03-09 14:34:50 -05:00
rewrite_field.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
rpc-lookup.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
service-lookup.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
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 Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
test-netdb.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-cancel-getpwuid_r.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-field.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
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 Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-nss-db-endpwent.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-nss-files-alias-leak.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-nss-files-alias-truncated.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-nss-files-hosts-erange.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-nss-files-hosts-getent.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-nss-files-hosts-long.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-nss-files-hosts-multi.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-nss-getpwent.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08: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 2021-01-02 12:17:34 -08:00
tst-nss-test2.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-nss-test3.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-nss-test4.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-nss-test5.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-nss-test_errno.c nss: Protect against errno changes in function lookup (bug 28953) 2022-03-11 11:14:24 +01:00
tst-reload1.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-reload2.c nss: Re-enable NSS module loading after chroot [BZ #27389] 2021-03-02 16:14:18 -05:00
valid_field.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
valid_list_field.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
Versions nss_files: Move into libc 2021-07-07 18:33:52 +02:00
XXX-lookup.c nss: Use "files dns" as the default for the hosts database (bug 28700) 2021-12-17 12:17:18 +01:00