mirror of
https://sourceware.org/git/glibc.git
synced 2025-07-29 11:41:21 +03:00
Update.
* nss/getXXbyYY_r.c (REENTRANT_NAME): Return ENOENT if status is neither SUCCESS nor TRYAGAIN [PR libc/4259]. * nss/nss_files/files-XXX.c (internal_getent): Don't set *errnop to ENOENT if no entry is found. * nis/nss_compat/compat-grp.c: Don't set errno in case of lookup failure. * 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-netgrp.c: Likewise. * nis/nss_nis/nis-network.c: Likewise. * nis/nss_nis/nis-proto.c: Likewise. * nis/nss_nis/nis-publickey.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. * resolv/nss_dns/dns-host.c: Likewise. * resolv/nss_dns/dns-network.c: Likewise. * nis/nss_nisplus/nisplus-alias.c: Save errno around NIS calls. * nis/nss_nisplus/nisplus-ethers.c: Likewise. * nis/nss_nisplus/nisplus-grp.c: Likewise. * nis/nss_nisplus/nisplus-hosts.c: Likewise. * nis/nss_nisplus/nisplus-network.c: Likewise. * nis/nss_nisplus/nisplus-proto.c: Likewise. * nis/nss_nisplus/nisplus-pwd.c: Likewise. * nis/nss_nisplus/nisplus-rpc.c: Likewise. * nis/nss_nisplus/nisplus-service.c: Likewise. * nis/nss_nisplus/nisplus-spwd.c: Likewise. * hesiod/nss_hesiod/hesiod-pwd.c (lookup): Preserve errno value. * hesiod/nss_hesiod/hesiod-proto.c (lookup): Likewise. * hesiod/nss_hesiod/hesiod-grp.c (lookup): Likewise. * hesiod/nss_hesiod/hesiod-service.c (lookup): Likewise.
This commit is contained in:
@ -1,4 +1,4 @@
|
||||
/* Copyright (C) 1996, 1997, 1998, 1999 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 1996, 1997, 1998, 1999, 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Extended from original form by Ulrich Drepper <drepper@cygnus.com>, 1996.
|
||||
|
||||
@ -146,6 +146,7 @@ _nss_dns_getnetbyaddr_r (uint32_t net, int type, struct netent *result,
|
||||
char qbuf[MAXDNAME];
|
||||
int cnt, anslen;
|
||||
u_int32_t net2;
|
||||
int olderr = errno;
|
||||
|
||||
/* No net address lookup for IPv6 yet. */
|
||||
if (type != AF_INET)
|
||||
@ -185,10 +186,11 @@ _nss_dns_getnetbyaddr_r (uint32_t net, int type, struct netent *result,
|
||||
if (anslen < 0)
|
||||
{
|
||||
/* Nothing found. */
|
||||
*errnop = errno;
|
||||
return (errno == ECONNREFUSED
|
||||
|| errno == EPFNOSUPPORT
|
||||
|| errno == EAFNOSUPPORT)
|
||||
int err = errno;
|
||||
__set_errno (olderr);
|
||||
return (err == ECONNREFUSED
|
||||
|| err == EPFNOSUPPORT
|
||||
|| err == EAFNOSUPPORT)
|
||||
? NSS_STATUS_UNAVAIL : NSS_STATUS_NOTFOUND;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user