diff options
| -rw-r--r-- | net/ntp-devel/Makefile | 1 | ||||
| -rw-r--r-- | net/ntp-devel/files/patch-ntpd-ntp_io.c | 21 |
2 files changed, 22 insertions, 0 deletions
diff --git a/net/ntp-devel/Makefile b/net/ntp-devel/Makefile index 00031759710f..d6f1c82ed091 100644 --- a/net/ntp-devel/Makefile +++ b/net/ntp-devel/Makefile @@ -7,6 +7,7 @@ PORTNAME= ntp PORTVERSION= 4.2.7p5 +PORTREVISION= 1 CATEGORIES= net ipv6 MASTER_SITES= ftp://ftp.udel.edu/pub/ntp/ntp4/ntp-dev/ \ http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-dev/ \ diff --git a/net/ntp-devel/files/patch-ntpd-ntp_io.c b/net/ntp-devel/files/patch-ntpd-ntp_io.c new file mode 100644 index 000000000000..cdf1eada580f --- /dev/null +++ b/net/ntp-devel/files/patch-ntpd-ntp_io.c @@ -0,0 +1,21 @@ +--- ntpd/ntp_io.c.orig 2010-06-03 20:24:51.000000000 -0700 ++++ ntpd/ntp_io.c 2010-06-03 20:27:36.000000000 -0700 +@@ -1414,12 +1414,18 @@ + sockaddr_u *psau + ) + { ++ unsigned char zerobuf[8]; ++ + if (IS_IPV4(psau) && !NSRCADR(psau)) + return 1; + + #ifdef INCLUDE_IPV6_SUPPORT + if (IS_IPV6(psau) && S_ADDR6_EQ(psau, &in6addr_any)) + return 1; ++ bzero(zerobuf, sizeof(zerobuf)); ++ // If the host portion is all 0, then assume it's a router's anycast address. ++ if (IS_IPV6(psau) && memcmp((char*)(&((struct sockaddr_in6*)psau)->sin6_addr) + 8, zerobuf, 8) == 0) ++ return 1; + #endif + + return 0; |
