[PATCH][BZ #14719] Return EAI_SYSTEM from getaddrinfo if we run out of fds

Siddhesh Poyarekar siddhesh@redhat.com
Tue Oct 23 11:49:00 GMT 2012


Hi,

As described in the bug report, the current behaviour for getaddrinfo
when it runs out of file descriptors is to return EAI_NOTFOUND, which
is incorrect.  Since a system error has occurred, it should be
returning EAI_SYSTEM so that the real cause of the failure could be
seen from errno.  Attached patch does that.  Tested on x86_64 Fedora
16 for AF_INET, AF_UNSPEC and AF_INET6.  OK to commit?

Regards,
Siddhesh

ChangeLog:

	[BZ #14719]
	* nss/getXXbyYY_r.c (INTERNAL (REENTRANT_NAME)): Set h_errno to
	NETDB_INTERNAL when NSS_STATUS_UNAVAIL.
	* resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname3_r): Set
	h_errno to NETDB_INTERNAL when errno is EMFILE or ENFILE.
	(_nss_dns_gethostbyname4_r): Likewise.
	* sysdeps/posix/getaddrinfo.c (gaih_inet): Set result to
	EAI_SYSTEM if NSS_STATUS_UNAVAIL.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pr14719.patch
Type: text/x-patch
Size: 2589 bytes
Desc: not available
URL: <http://sourceware.org/pipermail/libc-alpha/attachments/20121023/acecfb92/attachment.bin>


More information about the Libc-alpha mailing list