diff options
Diffstat (limited to 'contrib')
-rw-r--r-- | contrib/ntp/ntpd/ntp_io.c | 6 | ||||
-rw-r--r-- | contrib/ntp/ntpd/ntp_proto.c | 4 |
2 files changed, 3 insertions, 7 deletions
diff --git a/contrib/ntp/ntpd/ntp_io.c b/contrib/ntp/ntpd/ntp_io.c index 12a61ccb1d2c..9c4f6c1553e3 100644 --- a/contrib/ntp/ntpd/ntp_io.c +++ b/contrib/ntp/ntpd/ntp_io.c @@ -1486,9 +1486,7 @@ is_linklocal( if (IS_IPV6(psau)) { p6addr = &psau->sa6.sin6_addr; - if ( IN6_IS_ADDR_LINKLOCAL(p6addr) - || IN6_IS_ADDR_SITELOCAL(p6addr)) { - + if (IN6_IS_ADDR_LINKLOCAL(p6addr)) { return TRUE; } } else if (IS_IPV4(psau)) { @@ -3205,7 +3203,7 @@ sendpkt( } do { - if (INT_LL_OF_GLOB & src->flags) { + if (ismcast && INT_LL_OF_GLOB & src->flags) { /* avoid duplicate multicasts on same IPv6 net */ goto loop; } diff --git a/contrib/ntp/ntpd/ntp_proto.c b/contrib/ntp/ntpd/ntp_proto.c index f9605b8feacb..2e0d221c8472 100644 --- a/contrib/ntp/ntpd/ntp_proto.c +++ b/contrib/ntp/ntpd/ntp_proto.c @@ -471,16 +471,14 @@ transmit( return; } -#if 0 /* [Bug 3851] drop pool servers which can no longer be reached. */ if (MDF_PCLNT & peer->cast_flags) { if ( (IS_IPV6(&peer->srcadr) && !nonlocal_v6_addr_up) - || !nonlocal_v4_addr_up) { + || (IS_IPV4(&peer->srcadr) && !nonlocal_v4_addr_up)) { unpeer(peer); return; } } -#endif /* * In unicast modes the dance is much more intricate. It is |