Updates mtr to 0.69 which has ipv6 support. patches fix duplicate entries for multi-path routers and actually make ipv6 work on BSD.
David
Index: ports/net/mtr/Makefile =================================================================== RCS file: /cvs/ports/net/mtr/Makefile,v retrieving revision 1.29 diff -u -r1.29 Makefile --- ports/net/mtr/Makefile 23 Mar 2005 19:45:31 -0000 1.29 +++ ports/net/mtr/Makefile 1 Feb 2006 22:43:33 -0000 @@ -2,7 +2,7 @@ COMMENT= "Matt's traceroute - network diagnostic tool" -VERSION= 0.67 +VERSION= 0.69 DISTNAME= mtr-${VERSION} CATEGORIES= net Index: ports/net/mtr/distinfo =================================================================== RCS file: /cvs/ports/net/mtr/distinfo,v retrieving revision 1.6 diff -u -r1.6 distinfo --- ports/net/mtr/distinfo 5 Jan 2005 17:14:48 -0000 1.6 +++ ports/net/mtr/distinfo 1 Feb 2006 22:43:33 -0000 @@ -1,4 +1,4 @@ -MD5 (mtr-0.67.tar.gz) = 76347197775ac604d7150ea01502a1df -RMD160 (mtr-0.67.tar.gz) = 2bd87ddb09a4c2aaf0f78156d8d8f272b4060f29 -SHA1 (mtr-0.67.tar.gz) = 23fe652ebe25fe86fcb421e78eb76917248b9c94 -SIZE (mtr-0.67.tar.gz) = 131393 +MD5 (mtr-0.69.tar.gz) = 58904d6d8d70114195cdeb653d56914c +RMD160 (mtr-0.69.tar.gz) = e95e0f27253d8d94587b429cbb65311035e93c2e +SHA1 (mtr-0.69.tar.gz) = 3fd0fa148b349d1966e0d79af0ffb84ecc7bed4b +SIZE (mtr-0.69.tar.gz) = 183216 Index: ports/net/mtr/patches/patch-dns.c =================================================================== RCS file: ports/net/mtr/patches/patch-dns.c diff -N ports/net/mtr/patches/patch-dns.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ ports/net/mtr/patches/patch-dns.c 1 Feb 2006 22:43:33 -0000 @@ -0,0 +1,29 @@ +--- dns.c.orig Wed Feb 1 17:38:28 2006 ++++ dns.c Wed Feb 1 17:39:26 2006 +@@ -437,7 +437,7 @@ + } + + +-int longipstr(char *s, ip_t *dst) ++int longipstr(char *s, ip_t *dst, int af) + { + #ifdef ENABLE_IPV6 + return inet_pton( af, s, dst ); +@@ -488,7 +488,7 @@ + strerror(errno)); + exit(-1); + } +- longipstr( "127.0.0.1", &localhost ); ++ longipstr( "127.0.0.1", &localhost, AF_INET ); + aseed = time(NULL) ^ (time(NULL) << 3) ^ (dword)getpid(); + for (i = 0;i < BashSize;i++) { + idbash[i] = NULL; +@@ -1228,7 +1228,7 @@ + if ( addrcmp( (void *) &(_res.nsaddr_list[i].sin_addr), + (void *) &(from4->sin_addr), (int) AF_INET ) == 0 || + addrcmp( (void *) &(_res.nsaddr_list[i].sin_addr), +- (void *) &unspec_addr, (int) AF_INET ) != 0 ) /* 0.0.0.0 replies as 127.0.0.1 */ ++ (void *) &unspec_addr, (int) AF_INET ) == 0 ) /* 0.0.0.0 replies as 127.0.0.1 */ + break; + } else + for (i = 0;i < _res.nscount;i++) Index: ports/net/mtr/patches/patch-net.c =================================================================== RCS file: ports/net/mtr/patches/patch-net.c diff -N ports/net/mtr/patches/patch-net.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ ports/net/mtr/patches/patch-net.c 1 Feb 2006 22:43:33 -0000 @@ -0,0 +1,28 @@ +--- net.c.orig Wed Feb 1 17:37:38 2006 ++++ net.c Wed Feb 1 17:38:17 2006 +@@ -277,7 +277,7 @@ + exit( EXIT_FAILURE); + } + echotype = ICMP6_ECHO_REQUEST; +- salen = sizeof (struct sockaddr_storage); ++ salen = sizeof (struct sockaddr_in6); + break; + #endif + } +@@ -305,7 +305,6 @@ + rv = sendto(sendsock, packet, abs(packetsize), 0, + remotesockaddr, salen); + if (rv >= 0) { +- fprintf (stderr, "You've got a broken (FreeBSD?) system\n"); + BSDfix = 1; + } + } +@@ -346,7 +345,7 @@ + addrcpy( (void *) &(host[index].addrs[0]), addr, af ); + } else { + for( i=0; i<MAXPATH; ) { +- if( addrcmp( (void *) &(host[index].addrs[i]), (void *) &addr, ++ if( addrcmp( (void *) &(host[index].addrs[i]), addr, + af ) == 0 || + addrcmp( (void *) &(host[index].addrs[i]), + (void *) &unspec_addr, af ) == 0 ) break;