From ac16e90592f0b9842e193e2ebe0b3756f0b4361d Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Fri, 6 Mar 1998 11:39:36 +0000 Subject: Update. 1998-03-06 11:35 Ulrich Drepper * posix/wordexp-test.c: Change testsuite so that it can run even for ~root != /root. 1998-03-06 Andreas Jaeger * math/libm-test.c (catanh_test): Change epsilon for gcc 2.8.1. 1998-03-05 Andreas Schwab * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER): Don't store into global errno if we already store through __errno_location. * sysdeps/unix/i386/sysdep.S: Likewise. * sysdeps/unix/alpha/sysdep.S: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/brk.S: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Likewise. Add missing return to SYSCALL_ERROR_HANDLER for (!_LIBC_REENTRANT && PIC). 1998-03-05 Andreas Schwab * sysdeps/generic/sysdep.h (L): Remove definition. * sysdeps/i386/sysdep.h (L): Define it here instead. 1998-03-05 Thorsten Kukuk * nss/getXXbyYY_r.c: Check __nss_not_use_nscd_* variable for running nscd. * nscd/nscd_getgr_r.c: Set __nss_not_use_nscd_group variable. * nscd/nscd_getpw_r.c: Set __nss_not_use_nscd_passwd variable. * nscd/nscd_proto.h: Declare __nss_not_use_nscd_* variables. --- nscd/nscd_getpw_r.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'nscd/nscd_getpw_r.c') diff --git a/nscd/nscd_getpw_r.c b/nscd/nscd_getpw_r.c index 4420b80399..d9401ed3c9 100644 --- a/nscd/nscd_getpw_r.c +++ b/nscd/nscd_getpw_r.c @@ -29,6 +29,8 @@ #include "nscd.h" +int __nss_not_use_nscd_passwd; + static int __nscd_getpw_r (const char *key, request_type type, struct passwd *resultbuf, char *buffer, size_t buflen); @@ -98,8 +100,11 @@ __nscd_getpw_r (const char *key, request_type type, struct passwd *resultbuf, ssize_t nbytes; if (sock == -1) - /* Returning two signals that contacting the daemon failed. */ - return 2; + { + /* Returning two signals that contacting the daemon failed. */ + __nss_not_use_nscd_passwd = 1; + return 1; + } req.version = NSCD_VERSION; req.type = type; @@ -127,7 +132,9 @@ __nscd_getpw_r (const char *key, request_type type, struct passwd *resultbuf, if (pw_resp.found == -1) { + /* The daemon does not cache this database. */ close (sock); + __nss_not_use_nscd_passwd = 1; return 1; } -- cgit 1.4.1