From: Dave Hart Date: Thu, 16 Jul 2009 16:33:25 +0000 (+0000) Subject: Merge bk://www.ntp.org/ntp-dev X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=909d87f820ea63d8a2163ff8806ff5cb8a8acf29;p=thirdparty%2Fntp.git Merge bk://www.ntp.org/ntp-dev into shiny.ad.hartbrothers.com:C:/ntp/ntp-dev-1246 bk: 4a5f5655_ylHhP1EIidnOe1gW8XdlQ --- 909d87f820ea63d8a2163ff8806ff5cb8a8acf29 diff --cc ChangeLog index 4f04d1a20e,28b9024c77..851616f160 --- a/ChangeLog +++ b/ChangeLog @@@ -1,18 -1,5 +1,20 @@@ + * [Bug 1246] use a common template for singly-linked lists, convert most + doubly-linked lists to singly-linked. +(4.2.5p189) 2009/07/16 Released by Harlan Stenn +* Documentation cleanup from Dave Mills. +(4.2.5p188) 2009/07/15 Released by Harlan Stenn +* [Bug 1245] Broken xmt time sent in fast_xmit() of 4.2.5p187. +(4.2.5p187) 2009/07/11 Released by Harlan Stenn +* [Bug 1042] multicast listeners IPv4+6 ignore new interfaces. +* [Bug 1237] Windows serial code treat CR and LF both as line + terminators. +* [Bug 1238] use fudge time2 for serial timecode offset in NMEA driver. +* [Bug 1242] Remove --enable-wintime, symmetric workaround is now + always enabled. +* [Bug 1244] NTP_INSIST(fd != maxactivefd) failure in intres child +* Added restrict keyword "mssntp" for Samba4 DC operation, by Dave Mills. +(4.2.5p186) 2009/07/08 Released by Harlan Stenn +* ntp_proto.c cleanup from Dave Mills. (4.2.5p185) 2009/07/01 Released by Harlan Stenn * Documentation updates from Dave Mills. * [Bug 1234] convert NMEA driver to use common PPSAPI code. diff --cc ntpd/ntp_io.c index 3828ae1077,6cc0194cf5..12732d4cd4 --- a/ntpd/ntp_io.c +++ b/ntpd/ntp_io.c @@@ -3859,29 -3777,16 +3784,23 @@@ delete_interface_from_list struct interface *iface ) { - remaddr_t *next; - remaddr_t *entry; - - entry = ISC_LIST_HEAD(remoteaddr_list); + remaddr_t *unlinked; - while (entry != NULL) { - next = ISC_LIST_NEXT(entry, link); - if (entry->interface == iface) { - ISC_LIST_DEQUEUE_TYPE(remoteaddr_list, entry, - link, remaddr_t); - UNLINK_EXPR_SLIST(unlinked, remoteaddr_list, iface == - UNLINK_EXPR_SLIST_CURRENT()->interface, link, remaddr_t); - - if (unlinked != NULL) { - DPRINTF(4, ("Deleted addr %s for interface #%d %s from list of addresses\n", - stoa(&unlinked->addr), iface->ifnum, iface->name)); - free(unlinked); - } ++ do { ++ UNLINK_EXPR_SLIST(unlinked, remoteaddr_list, iface == ++ UNLINK_EXPR_SLIST_CURRENT()->interface, link, ++ remaddr_t); ++ ++ if (unlinked != NULL) { + 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)) { ++ stoa(&unlinked->addr), iface->ifnum, ++ iface->name)); ++ if (addr_ismulticast(&unlinked->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); ++ io_multicast_add(&unlinked->addr); ++ free(unlinked); + } - entry = next; - } ++ } while (unlinked != NULL); }