+* [Bug 1042] multicast listeners IPv4+6 ignore new interfaces
(4.2.5p182) 2009/06/18 Released by Harlan Stenn <stenn@ntp.org>
* Add missing header dependencies to the ntpdc layout verification.
* prefer.html updates from Dave Mills.
nif = findlocalinterface(addr, 0, 0);
if (nif) {
- DPRINTF(2, ("findlocalcastinterface: kernel recommends interface #%d %s\n", nif->ifnum, nif->name));
+ DPRINTF(2, ("findlocalcastinterface: kernel recommends interface #%d %s for %s\n",
+ nif->ifnum, nif->name, stoa(addr)));
return nif;
}
} /* for loop over interfaces */
if (nif != NULL)
- DPRINTF(3, ("findlocalcastinterface: found interface #%d %s\n",
- nif->ifnum, nif->name));
+ DPRINTF(3, ("findlocalcastinterface: found interface #%d %s for %s\n",
+ nif->ifnum, nif->name, stoa(addr)));
else
DPRINTF(3, ("findlocalcastinterface: no interface found for %s\n",
stoa(addr)));
DPRINTF(4, ("Deleted addr %s for interface #%d %s from list of addresses\n",
stoa(&entry->addr), iface->ifnum,
iface->name));
+ if (addr_ismulticast(&entry->addr)) {
+ /* find a new interface to use */
+ io_multicast_add(&entry->addr);
+ /* the list may have changed */
+ next = ISC_LIST_HEAD(remoteaddr_list);
+ }
free(entry);
}
entry = next;