This is the mail archive of the
glibc-bugs@sourceware.org
mailing list for the glibc project.
[Bug network/12377] getaddrinfo() should disregard link-local IPv6 addresses for AI_ADDRCONFIG purposes
- From: "psimerda at redhat dot com" <sourceware-bugzilla at sourceware dot org>
- To: glibc-bugs at sources dot redhat dot com
- Date: Tue, 31 Jul 2012 13:33:57 +0000
- Subject: [Bug network/12377] getaddrinfo() should disregard link-local IPv6 addresses for AI_ADDRCONFIG purposes
- Auto-submitted: auto-generated
- References: <bug-12377-131@http.sourceware.org/bugzilla/>
http://sourceware.org/bugzilla/show_bug.cgi?id=12377
--- Comment #17 from Pavel Åimerda <psimerda at redhat dot com> 2012-07-31 13:33:57 UTC ---
From downstream bug report:
https://bugzilla.redhat.com/show_bug.cgi?id=808147
Pavel Simerda 2012-07-31 09:27:53 EDT
> Tore Anderson 2012-07-31 09:02:12 EDT
> I have thought a bit on how to handle the problem in a better way, one that
> will not cancel out the primary function of AI_ADDRCONFIG (namely to
> suppress pointless and potentially harmful DNS lookups). My suggestion is to
> make getaddrinfo() ignore AI_ADDRCONFIG in the following circumstances:
>
> 1) when looking up literal IP addresses, and
> 2) when returning answers from /etc/hosts
3) when returning answers from any future nss plugin that may return link-local
addresses (and node-local, if it's that case).
So this is an unlimited number of special cases. Did you try to think it the
other way round? Specialcasing just DNS for the beginning? As far as I
understand, this is meant as an 'ugly hack' to work around particular DNS
misconfigurations and maybe an optimization technique for DNS.
This would work as a quick fix. The proper way would be to fix:
http://sourceware.org/bugzilla/show_bug.cgi?id=14413
Then every plugin would be able to provide full getaddrinfo() semantics
including
AI_ADDRCONFIG and this could be done by nss-dns.
--
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.