diff --git a/include/netdb.h b/include/netdb.h index 4dcdbb8cd4..1b25837b4b 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 4b2b284cdb..40a5d1a65e 100644 --- a/include/netgroup.h +++ b/include/netgroup.h @@ -1 +1 @@ -#include +#include diff --git a/inet/Makefile b/inet/Makefile index d378542549..9f39f7ff2b 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 d937e9835c..1ffa444730 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 06b7d7b6ca..b9174a138c 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 d0b564a033..2a451f68d9 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 74ba4470d8..4ddc018012 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