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

Re: IPv6, tentative addresses, bind(), wheezy

On Sun, 2012-11-04 at 19:48 +0100, Cyril Brulebois wrote:
> Steve Langasek <vorlon@debian.org> (04/11/2012):
> > Is there a way to get an event-based notification of this change, so
> > ifupdown can listen for such an event rather than having to poll?
> TL;DR: I think so.
> <disclaimer>I don't know anything about the linux kernel</disclaimer>


> Looking at net/ipv6/addrconf.c we have for examples:
>   add_addr()
>   addrconf_dad_start()
> doing things like:
>   ifp->flags &= ~IFA_F_TENTATIVE;
> It looks like ipv6_ifa_notify() is called upon changes.
> That one ends up calling inet6_ifa_notify(), which has things like
> struct sk_buff, nlmsg_new(), rtnl_notify(). The last one is defined in
> net/core/rtnetlink.c; it looks like somebody wants to hook oneself up
> onto a netlink socket from userspace.

Right, you must use rtnetlink.  But that is no more portable than using
socket options to reflect addresses for UDP.


Ben Hutchings
No political challenge can be met by shopping. - George Monbiot

Attachment: signature.asc
Description: This is a digitally signed message part

Reply to: