about summary refs log tree commit diff
diff options
context:
space:
mode:
authorArjun Shankar <arjun@redhat.com>2023-10-02 14:55:22 +0200
committerArjun Shankar <arjun@redhat.com>2023-10-24 12:30:59 +0200
commit3f7c7ac887f9d0f5d41b3c7d698fe8df939c0a87 (patch)
treefd8eb2d30fab083f918215fe11050a5318bd32ac
parenta7e8d0b90bc400b4d57afb01c1a54236a5c4754c (diff)
downloadglibc-3f7c7ac887f9d0f5d41b3c7d698fe8df939c0a87.tar.gz
glibc-3f7c7ac887f9d0f5d41b3c7d698fe8df939c0a87.tar.xz
glibc-3f7c7ac887f9d0f5d41b3c7d698fe8df939c0a87.zip
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  <adhemerval.zanella@linaro.org>
-rw-r--r--include/netdb.h2
-rw-r--r--include/netgroup.h2
-rw-r--r--inet/Makefile4
-rw-r--r--inet/Versions12
-rw-r--r--nscd/netgroupcache.c2
-rw-r--r--nss/Makefile11
-rw-r--r--nss/Versions7
-rw-r--r--nss/getnetgrent.c (renamed from inet/getnetgrent.c)0
-rw-r--r--nss/getnetgrent_r.c (renamed from inet/getnetgrent_r.c)0
-rw-r--r--nss/netgroup.h (renamed from inet/netgroup.h)0
10 files changed, 25 insertions, 15 deletions
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 <inet/netgroup.h>
+#include <nss/netgroup.h>
 
 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 <inet/netgroup.h>
+#include <nss/netgroup.h>
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 <unistd.h>
 #include <sys/mman.h>
 
-#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
index a7c83740a0..a7c83740a0 100644
--- a/inet/getnetgrent.c
+++ b/nss/getnetgrent.c
diff --git a/inet/getnetgrent_r.c b/nss/getnetgrent_r.c
index 60f476b661..60f476b661 100644
--- a/inet/getnetgrent_r.c
+++ b/nss/getnetgrent_r.c
diff --git a/inet/netgroup.h b/nss/netgroup.h
index e30c8f10cf..e30c8f10cf 100644
--- a/inet/netgroup.h
+++ b/nss/netgroup.h