about summary refs log tree commit diff
path: root/nis/nss_nis/nis-network.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1998-08-18 23:27:30 +0000
committerUlrich Drepper <drepper@redhat.com>1998-08-18 23:27:30 +0000
commit0c6cee5d656d933100b86b7d58803bdbd549e456 (patch)
tree9fe94f38351584e600d19b26893b957fabf37715 /nis/nss_nis/nis-network.c
parenteedbbe588f893e8bd93e65617d3fd98e172a3569 (diff)
downloadglibc-0c6cee5d656d933100b86b7d58803bdbd549e456.tar.gz
glibc-0c6cee5d656d933100b86b7d58803bdbd549e456.tar.xz
glibc-0c6cee5d656d933100b86b7d58803bdbd549e456.zip
Update.
1998-08-18  Ulrich Drepper  <drepper@cygnus.com>

	* include/features.h: Define __USE_EXTERN_INLINES for recent
	enough gcc.
	* argp/argp.h: Define extern inline functions only if
	__USE_EXTERN_INLINES is defined.
	* libio/stdio.h: Likewise.
	* math/math.h: Likewise.
	* stdlib/stdlib.h: Likewise.
	* string/argz.h: Likewise.
	* sysdeps/generic/bits/sigset.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/sigset.h: Likewise.
	* sysdeps/unix/sysv/sysv4/bits/sigset.h: Likewise.
	* sysdeps/wordsize-32/inttypes.h: Likewise.
	* sysdeps/wordsize-64/inttypes.h: Likewise.
	* wcsmbs/wchar.h: Likewise.

	* sysdeps/generic/bits/glob.c [_LIBC]: Define __stat using __xstat
	to allow compilation without optimization.

1998-08-14  Thorsten Kukuk  <kukuk@vt.uni-paderborn.de> 
 
	* nis/nss_compat/compat-grp.c: Set errno to ENOENT if we have no 
	more entries. 
	* nis/nss_compat/compat-initgroups.c: Likewise. 
	* nis/nss_compat/compat-pwd.c: Likewise. 
	* nis/nss_compat/compat-spwd.c: Likewise. 
	* nis/nss_nis/nis-alias.c: Likewise. 
	* nis/nss_nis/nis-ethers.c: Likewise. 
	* nis/nss_nis/nis-grp.c: Likewise. 
	* nis/nss_nis/nis-hosts.c: Likewise. 
	* nis/nss_nis/nis-initgroups.c: Likewise. 
	* nis/nss_nis/nis-network.c: Likewise. 
	* nis/nss_nis/nis-proto.c: Likewise. 
	* nis/nss_nis/nis-pwd.c: Likewise. 
	* nis/nss_nis/nis-rpc.c: Likewise. 
	* nis/nss_nis/nis-service.c: Likewise. 
	* nis/nss_nis/nis-spwd.c: Likewise. 
 
	* nis/rpcsvc/yp.h: Generate new without 1024 byte limits. 
 
	* nis/ypclnt.c: Try binding dir only first time, could be to old. 
 
	* nis/yp_xdr.c: Remove 1024 byte limit. 
	* nis/ypupdate_xdr.c: Likewise. 
 
	* nis/nss_nis/nis-publickey.c: Make sure, nobody could send 
	wrong data. 
 
Diffstat (limited to 'nis/nss_nis/nis-network.c')
-rw-r--r--nis/nss_nis/nis-network.c23
1 files changed, 18 insertions, 5 deletions
diff --git a/nis/nss_nis/nis-network.c b/nis/nss_nis/nis-network.c
index 802c03229e..7a1b65e584 100644
--- a/nis/nss_nis/nis-network.c
+++ b/nis/nss_nis/nis-network.c
@@ -104,7 +104,9 @@ internal_nis_getnetent_r (struct netent *net, char *buffer, size_t buflen,
 
       if (retval != NSS_STATUS_SUCCESS)
         {
-          if (retval == NSS_STATUS_TRYAGAIN)
+	  if (retval == NSS_STATUS_NOTFOUND)
+	    *errnop = ENOENT;
+          else if (retval == NSS_STATUS_TRYAGAIN)
 	    {
 	      *herrnop = NETDB_INTERNAL;
 	      *errnop = errno;
@@ -203,7 +205,9 @@ _nss_nis_getnetbyname_r (const char *name, struct netent *net, char *buffer,
 
   if (retval != NSS_STATUS_SUCCESS)
     {
-      if (retval == NSS_STATUS_TRYAGAIN)
+      if (retval == NSS_STATUS_NOTFOUND)
+	*errnop = ENOENT;
+      else if (retval == NSS_STATUS_TRYAGAIN)
 	{
 	  *errnop = errno;
 	  *herrnop = NETDB_INTERNAL;
@@ -233,7 +237,10 @@ _nss_nis_getnetbyname_r (const char *name, struct netent *net, char *buffer,
       if (parse_res == -1)
 	return NSS_STATUS_TRYAGAIN;
       else
-        return NSS_STATUS_NOTFOUND;
+	{
+	  *errnop = ENOENT;
+	  return NSS_STATUS_NOTFOUND;
+	}
     }
   else
     return NSS_STATUS_SUCCESS;
@@ -281,7 +288,10 @@ _nss_nis_getnetbyaddr_r (unsigned long addr, int type, struct netent *net,
 		    continue;
 		  }
 		else
-		  return NSS_STATUS_NOTFOUND;
+		  {
+		    *errnop = ENOENT;
+		    return NSS_STATUS_NOTFOUND;
+		  }
 	      }
 	    else
 	      {
@@ -313,7 +323,10 @@ _nss_nis_getnetbyaddr_r (unsigned long addr, int type, struct netent *net,
 	    if (parse_res == -1)
 	      return NSS_STATUS_TRYAGAIN;
 	    else
-	      return NSS_STATUS_NOTFOUND;
+	      {
+		*errnop = ENOENT;
+		return NSS_STATUS_NOTFOUND;
+	      }
 	  }
 	else
 	  return NSS_STATUS_SUCCESS;