]> git.ipfire.org Git - thirdparty/glibc.git/blobdiff - sunrpc/netname.c
nsswitch: use new internal API (callers)
[thirdparty/glibc.git] / sunrpc / netname.c
index 24ee519e42a3b51586f9f4c8158e9323a88a6c64..c0073be6d21674ef66436b31200125cae15454c2 100644 (file)
@@ -145,9 +145,7 @@ int
 netname2user (const char *netname, uid_t * uidp, gid_t * gidp,
              int *gidlenp, gid_t * gidlist)
 {
-  static service_user *startp;
-  static netname2user_function start_fct;
-  service_user *nip;
+  nss_action_list nip;
   union
   {
     netname2user_function f;
@@ -156,22 +154,7 @@ netname2user (const char *netname, uid_t * uidp, gid_t * gidp,
   enum nss_status status = NSS_STATUS_UNAVAIL;
   int no_more;
 
-  if (startp == NULL)
-    {
-      no_more = __nss_publickey_lookup2 (&nip, "netname2user", NULL, &fct.ptr);
-      if (no_more)
-       startp = (service_user *) - 1;
-      else
-       {
-         startp = nip;
-         start_fct = fct.f;
-       }
-    }
-  else
-    {
-      fct.f = start_fct;
-      no_more = (nip = startp) == (service_user *) - 1;
-    }
+  no_more = __nss_publickey_lookup2 (&nip, "netname2user", NULL, &fct.ptr);
 
   while (!no_more)
     {