This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH v2][BZ #15339] Avoid returning EAI_SYSTEM when there's a network error


On Tue, Apr 09, 2013 at 05:08:49PM +0530, Siddhesh Poyarekar wrote:
> On Mon, Apr 08, 2013 at 09:42:39PM +0400, Dmitry V. Levin wrote:
> > The configuration is essentially a bare chroot without additional
> > configuration, the kernel is 3.8.6.  send_dg doesn't call sendmmsg because
> > of buf2 == NULL.
> 
> Aha, so it's AF_INET and not AF_UNSPEC like your original reproducer
> suggested.  Here's an updated patch for 15339.  The major difference
> here is that I had incorrectly concluded that NSS_STATUS_UNAVAIL
> equals to an internal failure.  It's only an internal failure if none
> of the services were usable and in that case too, only when the
> failure was due to something other than not being able to find the nss
> module.  The latter case is implied if NSS_STATUS_UNAVAIL is returned
> as is along with h_errno as NO_RECOVERY.
> 
> Siddhesh
> 
> 	[BZ #15339]
> 	* nss/getXXbyYY_r.c (REENTRANT_NAME): Set NETDB_INTERNAL only
> 	when no services were used.
> 	* sysdeps/posix/getaddrinfo.c (gaih_inet): Set h_errno.
> 	Return EAI_SYSTEM if h_errno is NETDB_INTERNAL.

Looks good and passes all my test cases.  Thanks,


-- 
ldv

Attachment: pgp1qCK9GQQrf.pgp
Description: PGP signature


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]