From: Arjun Shankar Date: Mon, 2 Oct 2023 12:55:22 +0000 (+0200) Subject: Move 'netgroup' routines from 'inet' into 'nss' X-Git-Tag: glibc-2.39~342 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3f7c7ac887f9d0f5d41b3c7d698fe8df939c0a87;p=thirdparty%2Fglibc.git Move 'netgroup' routines from 'inet' into 'nss' These netgroup routines are entry points for nss functionality. This commit moves them along with netgroup.h from the 'inet' subdirectory to 'nss', and adjusts any references accordingly. Reviewed-by: Adhemerval Zanella --- diff --git a/include/netdb.h b/include/netdb.h index 4dcdbb8cd4b..1b25837b4b6 100644 --- a/include/netdb.h +++ b/include/netdb.h @@ -211,7 +211,7 @@ libanl_hidden_proto (__gai_suspend_time64) #define AI_DEFAULT (AI_V4MAPPED | AI_ADDRCONFIG) -#include +#include extern enum nss_status _nss_netgroup_parseline (char **cursor, struct __netgrent *result, diff --git a/include/netgroup.h b/include/netgroup.h index 4b2b284cdb4..40a5d1a65e9 100644 --- a/include/netgroup.h +++ b/include/netgroup.h @@ -1 +1 @@ -#include +#include diff --git a/inet/Makefile b/inet/Makefile index d3785425490..9f39f7ff2b9 100644 --- a/inet/Makefile +++ b/inet/Makefile @@ -54,8 +54,6 @@ routines := \ getnetbynm_r \ getnetent \ getnetent_r \ - getnetgrent \ - getnetgrent_r \ getproto \ getproto_r \ getprtent \ @@ -160,8 +158,6 @@ CFLAGS-getprtent_r.c += -fexceptions CFLAGS-getprtent.c += -fexceptions CFLAGS-either_ntoh.c += -fexceptions CFLAGS-either_hton.c += -fexceptions -CFLAGS-getnetgrent.c += -fexceptions -CFLAGS-getnetgrent_r.c += -fexceptions CFLAGS-in6_addr.c += $(config-cflags-wno-ignored-attributes) CFLAGS-if_index.c += $(config-cflags-wno-ignored-attributes) CFLAGS-ifaddrs.c += $(config-cflags-wno-ignored-attributes) diff --git a/inet/Versions b/inet/Versions index d937e9835cc..1ffa444730b 100644 --- a/inet/Versions +++ b/inet/Versions @@ -7,7 +7,7 @@ libc { rexecoptions; # e* - endaliasent; endhostent; endnetent; endnetgrent; endprotoent; endservent; + endaliasent; endhostent; endnetent; endprotoent; endservent; # e* ether_aton; ether_aton_r; ether_line; ether_ntoa; @@ -15,7 +15,7 @@ libc { # g* getdomainname; getnetbyaddr; getnetbyaddr_r; getnetbyname; - getnetbyname_r; getnetent; getnetent_r; getnetgrent; getnetgrent_r; + getnetbyname_r; getnetent; getnetent_r; getprotobyname; getprotobyname_r; getprotobynumber; getprotobynumber_r; getprotoent; getprotoent_r; getservbyname; getservbyname_r; getservbyport; @@ -36,7 +36,7 @@ libc { rcmd; rexec; rresvport; ruserok; ruserpass; # s* - setaliasent; setnetent; setnetgrent; setprotoent; setservent; + setaliasent; setnetent; setprotoent; setservent; } GLIBC_2.1 { # variables in normal name space @@ -49,7 +49,7 @@ libc { # g* getaliasbyname_r; getaliasent_r; gethostbyaddr_r; gethostbyname2_r; gethostbyname_r; gethostent_r; getnetbyaddr_r; getnetbyname_r; - getnetent_r; getnetgrent_r; getprotobyname_r; getprotobynumber_r; + getnetent_r; getprotobyname_r; getprotobynumber_r; getprotoent_r; getservbyname_r; getservbyport_r; getservent_r; @@ -81,10 +81,6 @@ libc { inet6_rth_segments; inet6_rth_getaddr; } GLIBC_PRIVATE { - # functions used in other libraries - __internal_endnetgrent; __internal_getnetgrent_r; - __internal_setnetgrent; - # Used from nscd. __inet6_scopeid_pton; __idna_to_dns_encoding; diff --git a/nscd/netgroupcache.c b/nscd/netgroupcache.c index 06b7d7b6ca8..b9174a138c3 100644 --- a/nscd/netgroupcache.c +++ b/nscd/netgroupcache.c @@ -24,7 +24,7 @@ #include #include -#include "../inet/netgroup.h" +#include "../nss/netgroup.h" #include "nscd.h" #include "dbg_log.h" diff --git a/nss/Makefile b/nss/Makefile index d0b564a0332..2a451f68d99 100644 --- a/nss/Makefile +++ b/nss/Makefile @@ -148,6 +148,17 @@ CFLAGS-gethstent.c += -fexceptions CFLAGS-gethstent_r.c += -fexceptions endif +# netgroup routines: +routines += \ + getnetgrent \ + getnetgrent_r \ + # routines + +ifeq ($(have-thread-library),yes) +CFLAGS-getnetgrent.c += -fexceptions +CFLAGS-getnetgrent_r.c += -fexceptions +endif + # pwd routines: routines += \ fgetpwent \ diff --git a/nss/Versions b/nss/Versions index 74ba4470d84..4ddc018012f 100644 --- a/nss/Versions +++ b/nss/Versions @@ -8,6 +8,7 @@ libc { # e* endgrent; + endnetgrent; endpwent; endspent; ether_hostton; ether_ntohost; @@ -23,6 +24,7 @@ libc { getgroups; gethostbyaddr; gethostbyaddr_r; gethostbyname; gethostbyname2; gethostbyname2_r; gethostbyname_r; gethostent; gethostent_r; + getnetgrent; getnetgrent_r; getpw; getpwent; getpwent_r; getpwnam; getpwnam_r; getpwuid; getpwuid_r; getspent; getspent_r; getspnam; getspnam_r; @@ -38,6 +40,7 @@ libc { # s* setgrent; + setnetgrent; setpwent; setspent; sgetspent; sgetspent_r; @@ -52,6 +55,7 @@ libc { GLIBC_2.1.2 { # g* getgrent_r; getgrgid_r; getgrnam_r; + getnetgrent_r; getpwent_r; getpwuid_r; getpwnam_r; getspent_r; getspnam_r; } @@ -181,6 +185,9 @@ libc { _nss_files_init; __merge_grp; __copy_grp; + + __internal_endnetgrent; __internal_getnetgrent_r; + __internal_setnetgrent; } } diff --git a/inet/getnetgrent.c b/nss/getnetgrent.c similarity index 100% rename from inet/getnetgrent.c rename to nss/getnetgrent.c diff --git a/inet/getnetgrent_r.c b/nss/getnetgrent_r.c similarity index 100% rename from inet/getnetgrent_r.c rename to nss/getnetgrent_r.c diff --git a/inet/netgroup.h b/nss/netgroup.h similarity index 100% rename from inet/netgroup.h rename to nss/netgroup.h