On Fri, 2 Nov 2012 23:24:55 +0100, martin f krafft
<madduck@debian.org> wrote:
>The reason is that by the time bind() is called, the IPv6 address
>(configured with /e/n/i inet6 static, which unbound should listen
>on) is not yet ready, but "tentative", so the bind() call fails.
Last time when I asked a question along those lines (with bind as the
application), the answer was the usual Debian-like "your application
is broken, have upstream convert the app to an event-based approach
and do not bother us".
This answer is partially right, applications need to be able to handle
dynamically changing IP addresses at run-time to properly support
IPv6. If they don't, one of the major advantages of IPv6 ("renumbering
is easy") is lost. This goes especially if the app's configuration
contains IP addresses.
The problem is, that the distributions, IMO, need to work around these
shortcomings until the applications are eventually fixed (which might
never happen). The socket API also has several shortcomings which
makes this approach harder to do. For examle, there is no semantic for
operations like "listen on this host address in all prefixes that the
host system is aware of", probably written along the line of
::224:d7ff:fed0:5adc.
Greetings
Marc
--
-------------------------------------- !! No courtesy copies, please !! -----
Marc Haber | " Questions are the | Mailadresse im Header
Mannheim, Germany | Beginning of Wisdom " | http://www.zugschlus.de/
Nordisch by Nature | Lt. Worf, TNG "Rightful Heir" | Fon: *49 621 72739834