apr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Colm MacCarthaigh <c...@stdlib.net>
Subject Re: [Vote] Release APR 1.2.9/0.9.14 and apr-iconv 1.2.0
Date Wed, 06 Jun 2007 22:50:24 GMT
On Wed, Jun 06, 2007 at 03:05:17PM -0300, Davi Arnaut wrote:
> It boils down to a combination of ai_flags = AI_ADDRCONFIG and "::1"
> (loopback address). The test is wrong, it should expect a failure (with
> the current network_io code adding the AI_ADDRCONFIG flag).

O.k., I think you're mis-interpretting things here. The purpose of the
AI_ADDRCONFIG flag is to determine if getaddrinfo should bother to
return IPv6 addresses or not, it's a basic "Do I actually have IPv6
connectivity?" test. 

It works by determining if your system has a useable non-localhost IPv6
address set, so if I have 2001:770:18::2 on an interface the answer is
"yes". "::1" is not treated at all differently by getaddrinfo as a
parameter. Where ::1 comes in is that if it's the only IPv6 address
configured on your system, the answer to the AI_ADDRCONFIG test is "no". 
Having ::1 does not mean you have useable IPv6 connectivity generally,
and so the aim is that the call does not return it.

In other words, if I ran this test on my system, which does have
a public IPv6 address, it would work just fine. "::1" as a parameter
is not special. 

Does that make sence? I can explain more verbosely too.

-- 
Colm MacCárthaigh                        Public Key: colm+pgp@stdlib.net

Mime
View raw message