NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: standards/44777: NetBSD lacks AI_ADDRCONFIG

On Apr 3,  6:20pm, (Pierre Pronchery) wrote:
-- Subject: Re: standards/44777: NetBSD lacks AI_ADDRCONFIG
|  I've been stumbling on this issue as well, as building bitcoin (at least
|  from git) requires AI_ADDRCONFIG to be set. It feels a bit sensitive to
|  me, as there seems to be some gray area about how this value should be
|  interpreted.
|  From lib/libc/net/getaddrinfo.c:
|  > 50  * - (post-2553) semantics of AI_ADDRCONFIG itself is too vague.
|  > 51  *   (1) what should we do against numeric hostname (2) what should we 
|  > 52  *   against NULL hostname (3) what is AI_ADDRCONFIG itself.  AF not 
|  > 53  *   non-loopback address configured?  global address configured?
|  I have had a look at how FreeBSD solved this and adapted their patch.
|  They have implemented AI_ADDRCONFIG (and added the other missing
|  definitions) but left this comment in this same file as well.
|  Please find the relevant patch attached here. However, I am not offering
|  a fix to the underlying issue, or not even implementing RFC 2553, so
|  this bug should be left opened regardless. Plus, I admit to have not
|  checked for the correctness of this implementation.
|  In any case, I could build bitcoin with this patch, and it would be
|  great to get it pulled-up into the netbsd-6 branch if at all accepted.

This patch is incorrect. It checks only if sockets can be created in the
particular family to determine if the family is available, not if actual
addresses of the particular family are configured in any system interface.

The TOG requires:

    If the AI_ADDRCONFIG flag is specified, IPv4 addresses shall be
    returned only if an IPv4 address is configured on the local system,
    [IP6] [Option Start]  and IPv6 addresses shall be returned only if
    an IPv6 address is configured on the local system. [Option End]

This has been implemented on head.


Home | Main Index | Thread Index | Old Index