aboutsummaryrefslogtreecommitdiff
path: root/nss/getXXbyYY_r.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1998-02-01 17:06:45 +0000
committerUlrich Drepper <drepper@redhat.com>1998-02-01 17:06:45 +0000
commit566efee21908cc59bb0645c3208446f3dedebce8 (patch)
tree48fa72b2b59511164d37b754bdf49c7c403729c3 /nss/getXXbyYY_r.c
parent6a844df675b81d6b9057db066446943792ba89fc (diff)
downloadglibc-566efee21908cc59bb0645c3208446f3dedebce8.tar
glibc-566efee21908cc59bb0645c3208446f3dedebce8.tar.gz
glibc-566efee21908cc59bb0645c3208446f3dedebce8.tar.bz2
glibc-566efee21908cc59bb0645c3208446f3dedebce8.zip
Update.
1998-02-02 01:12 Ulrich Drepper <drepper@cygnus.com> * libc.map: Add _h_errno. * inet/herrno.c: Make _h_errno weak alias. * login/Makefile (distribute): Add pty-internal.h. * nscd/Makefile (distribute): Add all the files missing. * signal/allocrtsig.c: Fix problem with recognizing whether RT sigs are available. * stdio-common/tstscanf.c: Rewrite a bit to continue after errors and report status at the end. * sysdeps/unix/sysv/linux/syscalls.list: Add lchown. * sysdeps/unix/sysv/linux/i386/sysdep.S: Make errno an initialized variable. * sysdeps/unix/sysv/linux/powerpc/sysdep.c: Add alias _errno for errno. * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.S: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.S: Likewise. 1998-01-03 20:47 Mark Kettenis <kettenis@phys.uva.nl> * configure.in: Fix --enable-add-ons code. 1998-02-01 Andreas Jaeger <aj@arthur.rhein-neckar.de> * elf/rtld.c (dl_main): Allow ":" as separator for LD_PRELOAD. Patch by Rudolf Leitgeb <leitgeb@leland.stanford.edu>. [PR libc/441] * sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Use first occurence in cache. Reported by Rudolf Leitgeb <leitgeb@leland.stanford.edu>. [PR libc/440] 1998-02-01 21:18 Ulrich Drepper <drepper@cygnus.com> * libio/iovsscanf.c: Set errno to 0 before calling _IO_vfscanf so that it never is EINTR (which is tested for in _IO_vfscanf). * Makefile.in: Call sub-make with CVSOPTS. * elf/Makefile (distribute): Add dl-procinfo.h. * sysdeps/unix/sysv/linux/alpha/Dist: Add rt_sigaction.S. 1998-02-01 15:54 Ulrich Drepper <drepper@cygnus.com> * version.h (VERSION): Bump to 2.0.92. 1998-01-31 Phil Blundell <philb@gnu.org> * sysdeps/unix/sysv/linux/siglist.c (_sys_siglist): Additional weak alias for __new_sys_siglist. thread and not pthread_detach.
Diffstat (limited to 'nss/getXXbyYY_r.c')
-rw-r--r--nss/getXXbyYY_r.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/nss/getXXbyYY_r.c b/nss/getXXbyYY_r.c
index d20fa34498..a4dc0011a2 100644
--- a/nss/getXXbyYY_r.c
+++ b/nss/getXXbyYY_r.c
@@ -152,6 +152,18 @@ INTERNAL (REENTRANT_NAME) (ADD_PARAMS, LOOKUP_TYPE *resbuf, char *buffer,
status = (*fct) (ADD_VARIABLES, resbuf, buffer, buflen,
__errno_location () H_ERRNO_VAR);
+ /* The the status is NSS_STATUS_TRYAGAIN and errno is ERANGE the
+ provided buffer is too small. In this case we should give
+ the user the possibility to enlarge the buffer and we should
+ not simply go on with the next service (even if the TRYAGAIN
+ action tells us so). */
+ if (status == NSS_STATUS_TRYAGAIN
+#ifdef NEED_H_ERRNO
+ && *h_errnop == NETDB_INTERNAL
+#endif
+ && errno == ERANGE)
+ break;
+
no_more = __nss_next (&nip, REENTRANT_NAME_STRING,
(void **) &fct, status, 0);
}