On 29 April 2014 09:59, Simon Perreault <si...@per.reau.lt> wrote: > Le 2014-04-29 09:44, Kenneth Westerback a écrit : >> Why would having the IPv6 addresses come first in the returned list be >> required to 'use' them? Please explain. > > Well I thought this would be obvious, but applications using > getaddrinfo() typically try connecting to each of the addresses returned > in sequence and stop as soon as connect() returns 0. So you end up using > whichever address was returned first 9 time out of 10.
Not obvious at all. I only learned of the existance of getaddrinfo() last week in Marrakesh when I tried to work on some OpenSSL code. Don't make such assumptions! :-) This seems to boil down to "I want to trick programs into using IPv6 if both are available." Not a goal I agree with, but an understandable one if we were on the verge of widespread adoption of IPv6. A better one would be "IPv6 is coming. Let's try to shake out programs new enough to use getaddrinfo() but old enough to not bother handling IPv6 addresses." Especially if you made it an option to explicitly make the kernel a more hostile environment. I'd still think this is premature, but probably worth discussion. It would seem a more laudible immediate goal would be to spread getaddrinfo() more consistantly into the daemons to prepare for our new IPv6 overlords. .... Ken > > I'll reply to your other questions, and other similar ones from other > folks, as soon as I have a good answer. > > Simon >