summary refs log tree commit diff
path: root/nis
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1999-09-19 01:39:45 +0000
committerUlrich Drepper <drepper@redhat.com>1999-09-19 01:39:45 +0000
commit8a386ec18659c26dab1fa8c534f4d108b32a5268 (patch)
treec43fdb9b8a11a0b75a4e028607d232039af57595 /nis
parent9cf44e65641b946949db0bbf3059901ff2ef08cb (diff)
downloadglibc-8a386ec18659c26dab1fa8c534f4d108b32a5268.tar.gz
glibc-8a386ec18659c26dab1fa8c534f4d108b32a5268.tar.xz
glibc-8a386ec18659c26dab1fa8c534f4d108b32a5268.zip
Update.
1999-09-18  Ulrich Drepper  <drepper@cygnus.com>

	* nis/nss_compat/compat-grp.c (getgrgid_plusgroup): Correct
	returned errno value in some cases.

	struct user_fp.  These were added in version 2.2.12 of the
Diffstat (limited to 'nis')
-rw-r--r--nis/nss_compat/compat-grp.c15
1 files changed, 9 insertions, 6 deletions
diff --git a/nis/nss_compat/compat-grp.c b/nis/nss_compat/compat-grp.c
index 3ef2039e84..ac56f6fbec 100644
--- a/nis/nss_compat/compat-grp.c
+++ b/nis/nss_compat/compat-grp.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc.
+/* Copyright (C) 1996, 1997, 1998, 1999 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Thorsten Kukuk <kukuk@vt.uni-paderborn.de>, 1996.
 
@@ -438,7 +438,10 @@ getgrnam_plusgroup (const char *name, struct group *result, char *buffer,
       int outvallen;
 
       if (yp_get_default_domain (&domain) != YPERR_SUCCESS)
-	return NSS_STATUS_NOTFOUND;
+	{
+	  *errnop = ENOENT;
+	  return NSS_STATUS_NOTFOUND;
+	}
 
       if (yp_match (domain, "group.byname", name, strlen (name),
 		    &outval, &outvallen) != YPERR_SUCCESS)
@@ -784,8 +787,8 @@ getgrgid_plusgroup (gid_t gid, struct group *result, char *buffer,
 
       if (yp_get_default_domain (&domain) != YPERR_SUCCESS)
 	{
-	  *errnop = errno;
-	  return NSS_STATUS_TRYAGAIN;
+	  *errnop = ENOENT;
+	  return NSS_STATUS_NOTFOUND;
 	}
 
       snprintf (buf, sizeof (buf), "%d", gid);
@@ -793,8 +796,8 @@ getgrgid_plusgroup (gid_t gid, struct group *result, char *buffer,
       if (yp_match (domain, "group.bygid", buf, strlen (buf),
 		    &outval, &outvallen) != YPERR_SUCCESS)
 	{
-	  *errnop = errno;
-	  return NSS_STATUS_TRYAGAIN;
+	  *errnop = ENOENT;
+	  return NSS_STATUS_NOTFOUND;
 	}
 
       if (buflen < ((size_t) outvallen + 1))